Взаимоуничтожить все одинаковые значения в массиве

Пример: ["c","a", "b", "c", "c"] => ["a","b"]


Ответы (2 шт):

Автор решения: Listopad02
const arr = ["c", "a", "b", "c", "c"] 

function sortArr(arr) {
  arr.sort()
  const result = []
  
  for (let i = 1, j = 0, t; i < arr.length + 1; i++) {
    if (arr[i-1] === arr[i]) t = arr[i-1]
    if (arr[i-1] !== t) result[j++] = arr[i-1]
  }
  
  return result
}

console.log(sortArr(arr))  // ["a", "b"]
→ Ссылка
Автор решения: Виктор

Как вариант:

var src = ["c","a", "b", "c", "c"]
const dup = src.filter((item, index, arr) => arr.indexOf(item) !== index);
src = src.filter(val => !dup.includes(val));
console.log(src); // ["a", "b"]

Этот вариант быстрее чем function sortArr(arr)

→ Ссылка