Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
Chrome 67
Windows
Desktop
6 years ago
Test name Executions per second
Basic for loop 84.0 Ops/sec
For loop but caching the length 13243.2 Ops/sec
While loop that imitates a for loop 85.8 Ops/sec
While loop that imitates a for loop caching len 13581.0 Ops/sec
While loop in reverse simplifying the test 10952.1 Ops/sec
While looping by popping values 6555791.5 Ops/sec
for ... in loop 7380762.0 Ops/sec
for ... in loop with integer test 7075248.5 Ops/sec
For loop testing on existence rather than lengt 7797102.5 Ops/sec
For loop testing on existence plus array lookup 7862444.5 Ops/sec
For testing on existence rather than length array 7607980.5 Ops/sec
For reference 7715308.5 Ops/sec
Array.forEach() native implementation. 7491631.0 Ops/sec
For reference against forEach() 7991575.5 Ops/sec
Script Preparation code:
Tests:
  • Basic for loop

  • For loop but caching the length

  • While loop that imitates a for loop

  • While loop that imitates a for loop caching len

  • While loop in reverse simplifying the test

  • While looping by popping values

  • for ... in loop

  • for ... in loop with integer test

  • For loop testing on existence rather than lengt

  • For loop testing on existence plus array lookup

  • For testing on existence rather than length array

  • For reference

  • Array.forEach() native implementation.

  • For reference against forEach()