HTML Preparation code:
AخA
 
1
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.core.js"></script>
2
<script>
3
const reduce = Function.bind.call(Function.call, Array.prototype.reduce);
4
const isEnumerable = Function.bind.call(Function.call, Object.prototype.propertyIsEnumerable);
5
const concat = Function.bind.call(Function.call, Array.prototype.concat);
6
const keys = Reflect.ownKeys;
7
  
8
if (!Object.valuess) {
9
    Object.valuess = function values(O) {
10
        return reduce(keys(O), (v, k) => concat(v, typeof k === 'string' && isEnumerable(O, k) ? [O[k]] : []), []);
11
    };
12
}
13
</script>
Script Preparation code:
 
var a = { a: 1, b: 2, c: 3};
Tests:
  • _.values

     
    _.values(a);
  • Object values

     
    Object.values(a);
  • proposal-object-values-entries/polyfill.js

     
    Object.valuess(a);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    _.values
    Object values
    proposal-object-values-entries/polyfill.js

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 7 months ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0
Firefox 131 on Windows
View result in a separate tab
Test name Executions per second
_.values 5316624.0 Ops/sec
Object values 23070326.0 Ops/sec
proposal-object-values-entries/polyfill.js 1504251.8 Ops/sec