Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   replace массива (https://javascript.ru/forum/misc/33095-replace-massiva.html)

Mikk1 09.11.2012 21:54

replace массива
 
Всем доброго вечера.JS я начал изучать только сегодня.
Возникла проблемка,не могу понять в чём ошибка и что нужно исправить.
Должно выводиться только "слово",но этого не происходит
<html>
<script type="text/javascript">
var mass = new Array('стоп','колёса');
var subject = "стоп слово колёса";
var c = (subject.replace(mass, ""));
document.write('<p align="center">'+c+'</p>');
</script>
</html>

Заранее спасибо

a_l 09.11.2012 22:06

Метод replace не умеет работать с массивами.
Можно сделать то, что вы хотите, по очереди обращаясь к элементам массива:
var c = subject.replace(mass[0], "").replace(mass[1], "");

Mikk1 09.11.2012 22:18

Я так уже пробовал,но к сожалению конструкция скрипта выходит очень громоздкая =( Возможны какие нибудь альтернативные способы ?

a_l 09.11.2012 22:33

Mikk1, громоздкая потому что в массиве много элементов? Тогда можно использовать цикл:
с = subject;
for(var i=0, l=mass.length; i<l; i++) {
  с = c.replace(mass[i], "");
}


Часовой пояс GMT +3, время: 18:26.