Самый быстрый способ, это обернуть массив в Set и получить из него новый массив:
arr = Array.from(new Set(arr));
Но работает только с примитивами (строки, числа, bool) т.к. объекты сравниваются по ссылке, на выходе будет новый массив
Если нужно производить манипуляции на текущем массиве, то есть способ чуть сложнее:
function dedupe(arr) {
const values = new Set();
const len = arr.length;
let offset = 0;
for(let i = 0; i < len; i++) {
let val = arr[i];
if(values.has(val)) {
offset++;
} else {
values.add(val);
arr[i - offset] = val;
}
}
arr.length = len - offset;
}