Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
Chrome 131
Windows
Desktop
one year ago
Variable binding to literal
62.9M/s
Constant binding to literal
57.7M/s
Do nothing (leave at the end, hardware is warmed up)
57.7M/s
Do nothing (leave at the beginning, hardware warm up)
57.5M/s
Object-destructuring variable binding with numbers
49.8M/s
Object-destructuring reverse constant binding with strings
49.8M/s
Object-destructuring constant binding with strings
49.7M/s
Object-destructuring reverse variable binding with strings
49.1M/s
Object-destructuring reverse variable binding with numbers
48.9M/s
Object-destructuring variable binding with strings
45.7M/s
Constant binding to variable
44.9M/s
Variable binding to constant
44.7M/s
Variable binding to variable
44.5M/s
Object-destructuring reverse constant binding with numbers
44.1M/s
Array-destructuring constant binding
43.4M/s
Array-destructuring variable binding
42.3M/s
Object-destructuring constant binding with numbers
39.5M/s
Variable binding to array
38.9M/s
Constant binding to array
38.8M/s
Constant binding to constant
38.4M/s
Constant reverse binding to array
38.0M/s
Variable reverse binding to array
37.5M/s
Conditional array assignment to literal !==
33.3M/s
Conditional variable assignment to literal !==
33.2M/s
Conditional array reverse assignment to literal !==
30.8M/s
Array assignment to literal
29.4M/s
Conditional array assignment to variable !==
28.5M/s
Conditional variable assignment to variable !==
28.4M/s
Conditional variable assignment to array !==
28.1M/s
Conditional variable assignment to constant !==
28.1M/s
Conditional variable reverse assignment to array !==
28.0M/s
Array reverse assignment to literal
28.0M/s
Array assignment to constant
24.6M/s
Conditional array reverse assignment to variable !==
24.1M/s
Array reverse assignment to constant
24.0M/s
Object-destructuring reverse element assignment with numbers
23.3M/s
Conditional array reverse assignment to constant !==
23.3M/s
Object-destructuring element assignment with numbers
22.8M/s
Object-destructuring reverse element assignment with strings
22.8M/s
Object-destructuring element assignment with strings
22.8M/s
Conditional array assignment to array !==
22.6M/s
Conditional array assignment to literal Object.is()
22.2M/s
Array reverse assignment to variable
22.0M/s
Array assignment to variable
21.8M/s
Conditional array reverse assignment to literal Object.is()
21.6M/s
Loop of second
21.6M/s
Conditional array reverse assignment to array !==
21.4M/s
Conditional array reverse assignment to variable Object.is()
21.4M/s
Conditional variable assignment to literal Object.is()
21.2M/s
Conditional array reverse assignment to constant Object.is()
21.2M/s
Conditional variable assignment to variable Object.is()
21.1M/s
Conditional array assignment to variable Object.is()
21.1M/s
Conditional array assignment to constant Object.is()
21.0M/s
Conditional array assignment to constant !==
21.0M/s
Conditional variable assignment to constant Object.is()
20.5M/s
Conditional variable assignment to array Object.is()
20.1M/s
Loop from end with constant length
19.7M/s
Loop from start with literal length
19.6M/s
Array reverse assignment to array
19.4M/s
Loop from start with constant length
19.4M/s
Conditional array reverse assignment to array Object.is()
19.3M/s
Conditional array assignment to array Object.is()
18.9M/s
Conditional variable reverse assignment to array Object.is()
18.8M/s
Array assignment to array
18.8M/s
Loop from end with literal length
18.5M/s
Loop of first
18.0M/s
Array-destructuring element assignment
17.1M/s
Loop from end with constant first length
17.1M/s
Loop from end evaluating second length
17.0M/s
Loop from end evaluating first length
16.5M/s
Loop from end with variable first length
16.4M/s
Loop from start with constant first length
16.1M/s
Loop from end with variable second length
16.0M/s
Loop from start with variable second length
15.9M/s
Loop from end with constant second length
15.8M/s
Loop from start with variable first length
15.6M/s
.forEach() on first closure
15.4M/s
Loop from start with constant second length
15.2M/s
.forEach() on second closure
14.7M/s
Loop from start re-evaluating first length
14.7M/s
Loop from start re-evaluating second length
13.9M/s
.forEach() on second
7.5M/s
.forEach() on first
6.5M/s
Array-destructuring rest assignment
2.7M/s
Loop in first
2.0M/s
Loop in second
1.9M/s
Object-destructuring reverse variable assignment with strings
1.4M/s
Object-destructuring reverse variable assignment with numbers
1.4M/s
Object-destructuring variable assignment with strings
1.4M/s
Object-destructuring variable assignment with numbers
1.4M/s
Variable assignment to variable
1.3M/s
Variable assignment to array
1.3M/s
Variable reverse assignment to array
1.2M/s
Variable assignment to constant
1.2M/s
Variable assignment to literal
1.2M/s
Array-destructuring variable assignment
1.1M/s
Object-destructuring rest assignment
350K/s
View exact numbers
Test name Executions per second
Variable binding to literal 62,922,236 Ops/sec
Constant binding to literal 57,676,348 Ops/sec
Do nothing (leave at the end, hardware is warmed up) 57,665,884 Ops/sec
Do nothing (leave at the beginning, hardware warm up) 57,478,832 Ops/sec
Object-destructuring variable binding with numbers 49,794,924 Ops/sec
Object-destructuring reverse constant binding with strings 49,764,324 Ops/sec
Object-destructuring constant binding with strings 49,664,060 Ops/sec
Object-destructuring reverse variable binding with strings 49,085,320 Ops/sec
Object-destructuring reverse variable binding with numbers 48,931,360 Ops/sec
Object-destructuring variable binding with strings 45,665,976 Ops/sec
Constant binding to variable 44,917,524 Ops/sec
Variable binding to constant 44,701,200 Ops/sec
Variable binding to variable 44,472,068 Ops/sec
Object-destructuring reverse constant binding with numbers 44,117,768 Ops/sec
Array-destructuring constant binding 43,363,372 Ops/sec
Array-destructuring variable binding 42,272,040 Ops/sec
Object-destructuring constant binding with numbers 39,534,520 Ops/sec
Variable binding to array 38,883,008 Ops/sec
Constant binding to array 38,813,616 Ops/sec
Constant binding to constant 38,365,084 Ops/sec
Constant reverse binding to array 37,950,436 Ops/sec
Variable reverse binding to array 37,504,864 Ops/sec
Conditional array assignment to literal !== 33,255,812 Ops/sec
Conditional variable assignment to literal !== 33,192,938 Ops/sec
Conditional array reverse assignment to literal !== 30,802,484 Ops/sec
Array assignment to literal 29,425,548 Ops/sec
Conditional array assignment to variable !== 28,490,798 Ops/sec
Conditional variable assignment to variable !== 28,372,002 Ops/sec
Conditional variable assignment to array !== 28,110,302 Ops/sec
Conditional variable assignment to constant !== 28,093,182 Ops/sec
Conditional variable reverse assignment to array !== 28,025,650 Ops/sec
Array reverse assignment to literal 27,969,364 Ops/sec
Array assignment to constant 24,637,108 Ops/sec
Conditional array reverse assignment to variable !== 24,140,354 Ops/sec
Array reverse assignment to constant 23,982,702 Ops/sec
Object-destructuring reverse element assignment with numbers 23,307,198 Ops/sec
Conditional array reverse assignment to constant !== 23,299,324 Ops/sec
Object-destructuring element assignment with numbers 22,839,016 Ops/sec
Object-destructuring reverse element assignment with strings 22,832,166 Ops/sec
Object-destructuring element assignment with strings 22,813,556 Ops/sec
Conditional array assignment to array !== 22,638,614 Ops/sec
Conditional array assignment to literal Object.is() 22,211,558 Ops/sec
Array reverse assignment to variable 21,984,274 Ops/sec
Array assignment to variable 21,835,088 Ops/sec
Conditional array reverse assignment to literal Object.is() 21,639,946 Ops/sec
Loop of second 21,630,276 Ops/sec
Conditional array reverse assignment to array !== 21,415,974 Ops/sec
Conditional array reverse assignment to variable Object.is() 21,350,422 Ops/sec
Conditional variable assignment to literal Object.is() 21,240,844 Ops/sec
Conditional array reverse assignment to constant Object.is() 21,210,166 Ops/sec
Conditional variable assignment to variable Object.is() 21,149,526 Ops/sec
Conditional array assignment to variable Object.is() 21,095,758 Ops/sec
Conditional array assignment to constant Object.is() 21,027,210 Ops/sec
Conditional array assignment to constant !== 21,015,598 Ops/sec
Conditional variable assignment to constant Object.is() 20,533,852 Ops/sec
Conditional variable assignment to array Object.is() 20,102,334 Ops/sec
Loop from end with constant length 19,740,880 Ops/sec
Loop from start with literal length 19,614,166 Ops/sec
Array reverse assignment to array 19,444,828 Ops/sec
Loop from start with constant length 19,443,376 Ops/sec
Conditional array reverse assignment to array Object.is() 19,282,466 Ops/sec
Conditional array assignment to array Object.is() 18,899,040 Ops/sec
Conditional variable reverse assignment to array Object.is() 18,845,834 Ops/sec
Array assignment to array 18,808,360 Ops/sec
Loop from end with literal length 18,465,244 Ops/sec
Loop of first 17,988,788 Ops/sec
Array-destructuring element assignment 17,102,096 Ops/sec
Loop from end with constant first length 17,078,096 Ops/sec
Loop from end evaluating second length 16,971,996 Ops/sec
Loop from end evaluating first length 16,547,016 Ops/sec
Loop from end with variable first length 16,379,137 Ops/sec
Loop from start with constant first length 16,050,165 Ops/sec
Loop from end with variable second length 15,960,315 Ops/sec
Loop from start with variable second length 15,854,480 Ops/sec
Loop from end with constant second length 15,773,020 Ops/sec
Loop from start with variable first length 15,583,005 Ops/sec
.forEach() on first closure 15,407,853 Ops/sec
Loop from start with constant second length 15,191,005 Ops/sec
.forEach() on second closure 14,721,358 Ops/sec
Loop from start re-evaluating first length 14,691,269 Ops/sec
Loop from start re-evaluating second length 13,889,201 Ops/sec
.forEach() on second 7,516,918 Ops/sec
.forEach() on first 6,480,734 Ops/sec
Array-destructuring rest assignment 2,698,267 Ops/sec
Loop in first 1,989,614 Ops/sec
Loop in second 1,932,138 Ops/sec
Object-destructuring reverse variable assignment with strings 1,414,204 Ops/sec
Object-destructuring reverse variable assignment with numbers 1,414,132 Ops/sec
Object-destructuring variable assignment with strings 1,387,436 Ops/sec
Object-destructuring variable assignment with numbers 1,385,889 Ops/sec
Variable assignment to variable 1,300,063 Ops/sec
Variable assignment to array 1,270,750 Ops/sec
Variable reverse assignment to array 1,244,739 Ops/sec
Variable assignment to constant 1,226,941 Ops/sec
Variable assignment to literal 1,200,615 Ops/sec
Array-destructuring variable assignment 1,078,004 Ops/sec
Object-destructuring rest assignment 350,345 Ops/sec
Script Preparation code:
Tests: