merge-array implementations

JavaScript performance comparison

Revision 20 of this test case created by Gerardo Lima

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  const arr1 = Array.from(Array(5000), (x,i) => i + 1)
  const arr2 = Array.from(Array(5000), (x,i) => i - 1)
  
  const arr1Length = arr1.length; 
  const arr2Length = arr2.length; 

};
</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
concat by push.apply *2
const target = [];
Array.prototype.push.apply(target, arr1)
Array.prototype.push.apply(target, arr2)
pending…
concat by push ...spread
const target = [];
target.push(...arr1, ...arr2)
pending…
push (naive 2)
// Pre allocate size
arr1.length = arr1Length + arr2Length

// Add arr2 items to arr1
for(var i = 0; i < arr2Length; i++){
  arr1[arr1Length + i] = arr2[i]
}
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