HTML Preparation code:
AخA
 
1
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
x
 
window.isEqualStringify = (obj1, obj2) => JSON.stringify(obj1) === JSON.stringify(obj2);
window.isEqualLodash = _.isEqual;
window.test1 = {
  obj: {},
  arr: [],
};
for (let i = 0; i < 1000; i++) {
  test1.obj['prop_' + i] = {};
  
  let arrReference = [];
  test1.arr.push(arrReference);
  
  let objReference = test1.obj['prop_' + i];
  for (let j = 0; j < i; j++) {
    objReference['internal_prop_' + j] = {};
    objReference = objReference['internal_prop_' + j];
    
    arrReference.push(j);
  }
}
window.test2 = JSON.parse(JSON.stringify(test1));
Tests:
  • JSON.stringify

     
    isEqualStringify(test1, test2)
  • lodash.isEqual

     
    isEqualLodash(test1, test2)
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    JSON.stringify
    lodash.isEqual

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 5 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36
Chrome 76 on Windows
View result in a separate tab
Test name Executions per second
JSON.stringify 2.8 Ops/sec
lodash.isEqual 1.2 Ops/sec