Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36
Chrome 53
Mac OS X 10.10.5
Other
8 years ago
Test name Executions per second
Shift loop 1930.6 Ops/sec
Unrolled Loop 6621.3 Ops/sec
Tests:
  • Shift loop

    AخA
     
    const arr = [];
    const ARRAY_SIZE = 5000;
    for (let i = 0; i < ARRAY_SIZE; i++) {
      arr.push(i);
    }
    while(arr.length) {
      let index = arr.shift();
      index++;
    }
  • Unrolled Loop

    x
     
    let arr = [];
    const ARRAY_SIZE = 5000;
    for (let i = 0; i < ARRAY_SIZE; i++) {
      arr.push(i);
    }
    const arrSize = arr.length;
    for (let i = 0; i < arrSize; i++) {
      let index = arr[i];
      index++;
    }
    arr = [];