Как можно при помощи javascript заменить слово в тексте, не используя replace
?
var text = "Этот трактат по теории этики был очень популярен в эпоху Возрождения";
Здесь нужно заменить слово "теории" на "практика".
В качестве простой замены метода replace
можно использовать пару методов split
и join
В таком виде:
str.split('подстрока которую заменить').join('строка на которую заменить');
Пример:
var text = "test 1, test 2, test 3, test 4, test 5, test 6";
document.body.innerHTML = text + '<br/>'+
text.split('test').join('newTest');
Для разнообразия также можно произвести замену с помощью indexOf()
и substring()
. Точнее, это уже больше не "замена" а "копировать/вырезать/вставить", но тоже работает.
function replace(str, find, word) {
var result = str, i = 0, len = find.length;
while (len) {
i = result.indexOf(find, i);
if (i == -1) {
break;
}
result = result.substring(0, i) + word + result.substring(i + len);
i += len;
}
return result;
}
var newStr = replace("Этот трактат по теории этики", "по теории", "на практике");
console.log(newStr); // Этот трактат на практике этики
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Подскажите, каким способом лучше сделать (скриншот) подобную диаграмму? Данные должны браться из базы данных и выводитьсяВидел примеры с использованием...
Как получить обработанные данные в виде структурированных данных (например массива)Дело в том, что эти данные необходимо обновлять в таблице,...
На HTML странице есть две кнопки с одним и тем же классом "BACK"И есть JS код который должен выполняться при нажатии на эти кнопки в зависимости...