Как оставить в массиве только уникальные значения js

Ответы
Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
01 ноября 2021

Чтобы получить из массива уникальные значения, можно воспользоваться простым алгоритмом:

  1. Инициируем простой массив, в который будем складывать результат
  2. Проходимся по исходному массиву и на каждой итерации проверяем, если в результате еще нет текущего элемента, то добавляем его в результат.

Для реализации можно использовать либо цикл, либо встроенные методы для перебора массива, например reduce:

const items = ['item1', 'item2', 'item1', 'item3', 'item2', 'item4'];
const result = items.reduce((acc, item) => {
  if (acc.includes(item)) {
    return acc; // если значение уже есть, то просто возвращаем аккумулятор
  }
  return [...acc, item]; // добавляем к аккумулятору и возвращаем новый аккумулятор
}, []);
console.log(result); // => ['item1', 'item2', 'item3', 'item4']