Javascript array concat vs push

JavaScript performance comparison

Revision 249 of this test case created by Ryan Carniato

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  var arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
  var arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
  var arr3 = []

};
</script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
push spread
for (i = 10000; i > 0; i--) {
  arr1.push(...arr2);
}
pending…
concat
for (i = 10000; i > 0; i--) {
  arr1 = arr1.concat(arr2);
}
pending…
push/slice
for (i = 10000; i > 0; i--) {
  const arr = arr1.slice(0);
  arr.push(...arr2);
  arr1 = arr;
}
pending…
push.apply
for (i = 10000; i > 0; i--) {
  Array.prototype.push.apply(arr1, arr2);
}
pending…

Compare results of other browsers

Revisions

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

0 Comments