Как убрать одинаковые элементы из массива в javascript?

Пользователь

от nicola , в категории: JavaScript , 3 года назад

Как убрать одинаковые элементы из массива в javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 3 года назад

@nicola Как вариант Вы можете использовать filter() функцию в Javascript чтобы убрать одинаковые элементы из массива, пример кода:


1
2
3
4
5
let array = [1, 1, 2, 3, 2, "test", "123", "test"]
array = array.filter((v, i) => array.indexOf(v) === i)

// Вывод: [1, 2, 3, 'test', '123']
console.log(array)
Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от francisco.friesen , 2 года назад

@nicola 

Вы можете удалить все дубликаты из массива, используя несколько различных способов в JavaScript. Вот некоторые из них:

  1. Использование Set:
1
2
3
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]


  1. Использование filter:
1
2
3
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(uniqueArr); // [1, 2, 3, 4, 5]


  1. Использование reduce:
1
2
3
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.reduce((acc, curr) => acc.includes(curr) ? acc : [...acc, curr], []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]


Во всех этих примерах мы получаем уникальный массив, удаляя дубликаты из исходного массива.