Я потратил 2 часа ночью, чтобы использовать Javascript для обработки простой функции фильтрации строк. Код на самом деле очень прост, я просто хочу отфильтровать <b/> в результатах запроса, возвращаемых Google AJAX. API поиска.
Очень важная причина, почему это занимает так много времени, заключается в том, что я не знаком с операцией объединения символов в JavaScript. JS не поддерживает +=, поэтому вам нужно использовать a=a + 'b'. На самом деле, эта проблема очень проста, если подумать, но я не знаю, почему это заняло много времени.
Скопируйте код кода следующим образом:
функция ProcessString(строка){
вар я = 0;
вар leftTagFlag = ложь
var ClearString = new String();//нет строки тега <b>
alert("string.length = " + string.length);
в то время как (я <string.length) {
переключатель(string.charAt(i)){
случай '<': leftTagFlag = true;
перерыв;
случай '>': leftTagFlag = false;
перерыв;
случай '/':
случай 'b': if(leftTagFlag)
перерыв;
иначеclearString.concat(string.charAt(i));
по умолчанию:clearString =clearString.concat(string.charAt(i));
}
я++;
}