Test name | Executions per second |
---|---|
Lodash uniqBy | 3817.8 Ops/sec |
new Map() Destructuring | 1766.9 Ops/sec |
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
var myArr = Array.from({
length: 16000
}, () => ({ someData: 123, value: Math.floor(Math.random() * 1000) }));
var myCopy = null;
myCopy = _.uniqBy(myArr, 'value').map(({ value }) => value);
myCopy = [new Map(myArr.map((el) => [el.value, el])).values()];