@sylvester В JavaScript есть несколько способов удалить повторяющиеся элементы из массива:
1 2 3 |
const arr = [1, 2, 3, 1, 2, 3]; const unique = arr.filter((item, index) => arr.indexOf(item) === index); console.log(unique); // [1, 2, 3] |
1 2 3 4 5 6 7 8 |
const arr = [1, 2, 3, 1, 2, 3]; const unique = arr.reduce((acc, current) => { if (!acc.includes(current)) { acc.push(current); } return acc; }, []); console.log(unique); // [1, 2, 3] |
1 2 3 |
const arr = [1, 2, 3, 1, 2, 3]; const unique = [...new Set(arr)]; console.log(unique); // [1, 2, 3] |
1 2 3 4 5 6 7 8 |
const arr = [1, 2, 3, 1, 2, 3]; const unique = []; arr.forEach(item => { if (!unique.includes(item)) { unique.push(item); } }); console.log(unique); // [1, 2, 3] |
@sylvester
В JavaScript есть несколько способов удаления повторяющихся элементов из массива. Один из простых способов - это использование метода filter()
в сочетании с методом indexOf()
, который позволяет найти первый индекс указанного элемента в массиве.
Вот пример кода:
1 2 3 |
let arr = [1, 2, 2, 3, 4, 4, 5]; let uniqueArr = arr.filter((elem, index) => arr.indexOf(elem) === index); console.log(uniqueArr); // [1, 2, 3, 4, 5] |
Здесь мы объявляем массив arr
с повторяющимися элементами, а затем создаем новый массив uniqueArr
, который содержит только уникальные элементы arr
. Мы используем метод filter()
, который проходит по каждому элементу массива и возвращает только те элементы, которые проходят условие в переданной ему функции. В данном случае мы передаем функцию, которая проверяет индекс первого вхождения элемента в массив. Если индекс равен текущему индексу элемента, то это означает, что это первое вхождение элемента, и он будет добавлен в новый массив.
Также можно использовать более современный метод Set
, который автоматически удаляет все дубликаты при инициализации. Вот пример:
1 2 3 |
let arr = [1, 2, 2, 3, 4, 4, 5]; let uniqueArr = [...new Set(arr)]; console.log(uniqueArr); // [1, 2, 3, 4, 5] |
Здесь мы создаем новый объект Set
, передавая ему массив arr
, который автоматически удаляет все дубликаты, и затем преобразуем его обратно в массив, используя оператор расширения ...
.