Array push() vs unshift() vs direct assignment (v37)

Revision 37 of this benchmark created by dsqdsqdsq on


Setup

function add(value,list) { list[ list.length ] = value } 
  
  function add2(value,list) { Array.prototype.push.call(list,value) }

Test runner

Ready to run.

Testing in
TestOps/sec
push
var a =[];
a.push(1);
a.push(2);
a.push(3);
a.push(4);
a.push(5);
a.push(6);
ready
unshift
var a =[];
a.unshift(6);
a.unshift(5);
a.unshift(4);
a.unshift(3);
a.unshift(2);
a.unshift(1);
ready
Direct Assignment
var a = [];
a[0] = 1;
a[1] = 2;
a[2] = 3;
a[3] = 4;
a[4] = 5;
a[5] = 6;
ready
funk
var a =[];
add(1,a) ;
add(2,a) ;
add(3,a) ;
add(4,a) ;
add(5,a) ;
add(6,a) ;
ready
funk2
var a =[];
add2(1,a) ;
add2(2,a) ;
add2(3,a) ;
add2(4,a) ;
add2(5,a) ;
add2(6,a) ;
ready

Revisions

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