Test name | Executions per second |
---|---|
Using indexOf | 84.1 Ops/sec |
Using lastIndexOf | 66.8 Ops/sec |
Using a Set | 571.9 Ops/sec |
Using a Map | 394.8 Ops/sec |
var array = [];
for (let i = 0; i < 100000; i++) {
array.push(Math.floor((Math.random() * 10) + 1));
}
array.filter((item, index) => array.indexOf(item) != index);
array.filter((item, index) => array.lastIndexOf(item) != index);
[new Set(array)]
const deduped = new Map();
array.forEach((v) => {
if (!deduped.has(v)) {
deduped.set(v, v);
}
});
return Array.from(deduped.values());