с ретёрном) убирает повторы, чтобы было только одно вхождение каждого элемента
function uniq(arr) {
return arr.filter( (element, index) => arr.indexOf(element) == index)
}
он работает.
подскажит, как он работает?.. не вдупляю
оставляет только первые вхождения просто)
но, я вас прошу, юзаните Set, не надо так
Что фильтр делает понимаешь?
Находит индекс первого вхождения элемента в массиве, и если индекс текущего не соответствует индексу первого - значит он лишний.
это с комментов код, не мой) мой через цикл и запись в новый массив )
так и понимаю : Метод filter() создаёт новый массив со всеми элементами, прошедшими проверку, задаваемую в передаваемой функции. мне не понять проверку в том коде, как это элемент с индеком равен индексу?..
Вообще, этот код не должен работать я щас так глянул
не должен или не работает?)
indexOf возвращает индекс самого первого вхождения, т.е. если в массиве [1,2,1] искать 1, получишь 0 в массиве 2 единицы: с индексом 0 и 2, поэтому останется только первая
на примитивах должен
Большинство делает так Array.from(new Set([1,2,2,3]))
спасибо, схоронил
Обсуждают сегодня