HTML Preparation code:
AخA
 
1
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>
Script Preparation code:
 
var obj = Array.from({ length: 10000 }).map((value, i) => i).reduce((val, v) => { val[v] = v; return val; }, {})
Tests:
  • lodash.map

     
    _.map(obj, function(v, k) {})
  • Object.entries.map

     
    Object.entries(obj).map(function([k, v]) {})
  • vanilla for-loop w/ Object.entries

     
    const entries = Object.entries(obj);
    for (let i = 0; i < entries.length; i++) { const [k, v] = entries[i]; }
  • lodash.forEach

     
    _.forEach(obj, function(v, k) {})
  • Object.values

     
    Object.values(obj).forEach(function(val, index) {
      const v = val;
    });
  • Object.keys

     
    Object.keys(obj).forEach(function(key, index) {
      const k = key;
    });
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    lodash.map
    Object.entries.map
    vanilla for-loop w/ Object.entries
    lodash.forEach
    Object.values
    Object.keys

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Chrome 97 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
lodash.map 6670.7 Ops/sec
Object.entries.map 3341.4 Ops/sec
vanilla for-loop w/ Object.entries 3924.9 Ops/sec
lodash.forEach 6752.5 Ops/sec
Object.values 45547.2 Ops/sec
Object.keys 13954.2 Ops/sec