Есть код, который удаляет повторяющиеся слова в строке., но вот сделать чтобы количество этих повторов вводилось с клавиатуры не получается. Сейчас вводится в string3 строка, переводится в массив, редактируется с помощью Go(); и возвращается в string4
Пример:
мама мыла раму мама
Результат:
мама мыла раму
Необходимо, ввести максимальное количество повторов maxrepeat = 3
Пример:
мама мыла раму мама мама мама
Результат:
мама мама мама мыла раму
Подскажите, в чем может быть проблема.
<script>
function Go(origArr) //название функции, принимает параметр (origArr)
{
var newArr = []; //будущий массив, с новыми значениями
var origLength = origArr.length; //оригинальная длина, длина массива
var found = false, i, j, n, s = false; //совпадение = ложь
for (i = 0; i < origLength; i++) //нач. значение = 0, цикл до тех пор пока i< длины массива, i++
{
found = false; //совпадение = ложь
for (j = 0; j < newArr.length; j++) //нач. значение j=0, для формирования нового массива, до тех пор пока j < длины нового массива
{
if (origArr[i] == newArr[j]) //проверяем равенсто оригинального массива, с новым массивом
{ // ==== полное равенство, по типу и ..
found = true; //совпрадение = правда
s = true;
break; //заканчиваем цикл
}
}
if (!found) //если нет совпадений
{
newArr.push(origArr[i]); // в новый массив, заносим элемент orrigArr
}
else
for(n = 0;n<maxrepeat;n++)
{
newArr.push(origArr[i]);
}
}
return newArr;
}
function newstring()
{
var tags=document.getElementById('string3').value;
var maxrepeat=document.getElementById('string2').value;
eval(maxrepeat);
tags = (tags.toLowerCase());
var re = /\s+/gi
var tagList = tags.split(re);
tagList = Go(tagList);
tagList = tagList.join(' '); // 1-2-3-4
string4.value = tagList;
}</script>
<span>Maxrepeat:</span><input type="text" id='string2' size='10' name="string2"> <br><br>
<span>Введите строку:</span><input type="text" id='string3' size='100' name="string3"> <br><br>
<input type='button' value='Удалить повторяющиеся слова' onclick='newstring();' /><br><br>
<span>Обработанная строка</span> <input type="text" id='string4' size='100' name="string4" readonly>