Javascript array concat vs push

JavaScript performance comparison

Revision 225 of this test case created by Tristan Berger

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  let arr1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  let arr2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  
  function fastConcat(arr, remaining) {
    return remaining === 0
      ? arr
      : fastConcat(arr.concat(arr2), remaining - 1)
  }

};
</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
fastConcat
arr1 = fastConcat(arr1, 1000)
pending…
push
for (let i = 0; i < 1000; i++) {
  Array.prototype.push.apply(arr1, arr2)
}
pending…
concat
for (let i = 0; i < 1000; i++) {
  arr1 = arr1.concat(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