#javascript
Как можно при помощи javascript заменить слово в тексте, не используя replace? var text = "Этот трактат по теории этики был очень популярен в эпоху Возрождения"; Здесь нужно заменить слово "теории" на "практика".
Ответы
Ответ 1
В качестве простой замены метода replace можно использовать пару методов split и join В таком виде: str.split('подстрока которую заменить').join('строка на которую заменить'); Пример: var text = "test 1, test 2, test 3, test 4, test 5, test 6"; document.body.innerHTML = text + '
'+ text.split('test').join('newTest');Ответ 2
Для разнообразия также можно произвести замену с помощью 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); // Этот трактат на практике этики
Комментариев нет:
Отправить комментарий