HTML Preparation code:
x
 
1
2
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
 
var arr1 = [];
for(let i = 0; i < 100; i++) {
  arr1.push('' + i);
}
var arr2 = [];
for(let i = 49; i >= 0; i--) {
  arr2.push('' + i);
}
Tests:
  • Lodash

     
    const notInArr1 = _.difference(arr2, arr1)
    const notInArr2 = _.difference(arr1, arr2)
  • Set & Filter

     
    const arr1Set = new Set();
    const arr2Set = new Set();
    arr1.forEach(value => arr1Set.add(value));
    arr2.forEach(value => arr2Set.add(value));
    const notInArr1 = arr2.filter(value => !arr1Set.has(value));
    const notInArr2 = arr1.filter(value => !arr2Set.has(value));
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Lodash
    Set & Filter

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 days ago)
Mozilla/5.0 (X11; Linux x86_64; rv:136.0) Gecko/20100101 Firefox/136.0
Firefox 136 on Linux
View result in a separate tab
Test name Executions per second
Lodash 72339.9 Ops/sec
Set & Filter 182242.2 Ops/sec