new array vs literal (v10)

Revision 10 of this benchmark created on


Test runner

Ready to run.

Testing in
TestOps/sec
new Array(length)
var newArray = new Array(500000)

for (var i = 0; i < 500000; ++i) {
    newArray[i] = i;
}
ready
new Array()
var newArray = new Array();

for (var i = 0; i < 500000; ++i) {
    newArray[i] = i;
}
ready
array literal w/length
var array = [];
array.length = 500000;

for (var i = 0; i < 500000; ++i) {
    array[i] = i;
}
ready
array literal
var array = [];

for (var i = 0; i < 500000; ++i) {
    array[i] = i;
}
ready
array literal with preset index
var array = [], i=0;

for (; i < 500000; ++i) {
    array[i] = i;
}
ready
array literal with preset index and push
var array = [], i=0;

for (; i < 500000; ++i) {
    array.push(i);
}
ready
new Array() with preset index
var newArray = new Array(), i=0;

for (; i < 500000; ++i) {
    newArray[i] = i;
}
ready
new Array(length) with preset index
var newArray = new Array(500000), i=0;

for (; i < 500000; ++i) {
    newArray[i] = i;
}
ready
array literal with length and preset index
var array = [], i=0;
array.length = 500000

for (; i < 500000; ++i) {
    array[i] = i;
}
ready
new Array() with preset index and push
var newArray = new Array(), i=0;

for (; i < 500000; ++i) {
    newArray.push(i);
}
ready
new Array() with push
var newArray = new Array();

for (var i = 0; i < 500000; ++i) {
    newArray.push(i);
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.