Сразу скажу, что данный фрагмент кода посоветовали на стэке, но там порою бывает токсичная аудитория. не понятен следующий фрагмент. Знаю, что
pars[pars[i]]
нужно для того, чтобы указать не на конкретный элемент массива, а в целом на весь массив, но не понимаю, как происходит проверка. объясните дословно, пожалуйста, что происходит и как проверяется условие.
т.е если указанное слово в массиве является истинной, то добавляем к этому слову +1, так получается? а дальше удаляем это слово, чтобы не зациклилась прога. иначе мы просто добавляем к этому слову единицу указывая, что оно не повторилось, так? но как происходит само сравнение, мы же не указываем с чем сравнивать.
и почему мы добавляем к слову количество, когда начинаем записывать количество повторений?
var pars = ('Ваш текст').toLowerCase().replace(/[.,\/#!?$%\^&\*;:{}=\-_`~()]/g, "").split(' ');
for (var len = pars.length, i = len; i >= 0; i--) {
if (pars[pars[i]]) { //проверяем встречалось ли уже это слово
pars[pars[i]] += 1; //если да, то увеличиваем счетчик на один
pars.splice(i, 1); //удаляем это слово
} else {
pars[pars[i]] = 1; //если нет, то ставим счетчик на единицу
}