Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0
Firefox 121
Windows
Desktop
one year ago
Test name Executions per second
Direct Array Access 311247.3 Ops/sec
Local Variable Access 294887.1 Ops/sec
Script Preparation code:
x
 
var arr = [
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
    { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" }, { "key": "value" },
]
var newarr1 = []
var newarr2 = []
Tests:
  • Direct Array Access

     
    for (var i = 0; i < arr.length; i++) {
      newarr1.push(arr[i])
    }
  • Local Variable Access

     
    for (var i = 0; i < arr.length; i++) {
      const el = arr[i]
      newarr2.push(el)
    }