Согласно странице String.prototype.replace()
в MDN , я могу легко заменить несколько шаблонов, просто используя
str.replace('what to replace', 'replace with', 'flags')
и установка флагов на 'g'
.
Отлично работает в Firefox 3.6. Но в Chrome и IE8 он заменяет только первый 'what to replace'
.
Я могу использовать
str.replace(/what to replace/gi, 'replace with')
синтаксис. Но я вытаскиваю 'what to replace'
из массива, что затрудняет добавление флагов в этом синтаксисе.
Вот код, который я пытаюсь использовать. Как я могу изменить его для работы в Chrome, а также Firefox?
function generateQuestion()
{
//alert('variable length: '+variableList.length);
for(i=0;i<variableList.length;i++)
{
variable = variableList[i];
rep = replacementList[i];
flags = "gi";
questionText = questionText.replace(variable, rep, flags);
}
}
И зачем мне вообще его модифицировать? Разве Chrome не должен оценивать JavaScript, как описано в ссылке?