Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36
Chrome 107
Windows
Desktop
2 years ago
Test name Executions per second
concat 1003.8 Ops/sec
forEach 818.7 Ops/sec
spread 1041.4 Ops/sec
Tests:
  • concat

    x
     
    const arr1 = Array.from({ length: 5000}).map((_, i) => i);
    const arr2 = Array.from({ length: 5000}).map((_, i) => i);
    const arr3 = Array.from({ length: 5000}).map((_, i) => i);
    const finallArr1 = arr1.concat(arr2).concat(arr3);
  • forEach

     
    const arr1 = Array.from({ length: 5000}).map((_, i) => i);
    const arr2 = Array.from({ length: 5000}).map((_, i) => i);
    const arr3 = Array.from({ length: 5000}).map((_, i) => i);
    const finalArr2 = [];
    arr1.forEach((e) => finalArr2.push(e)); 
    arr2.forEach((e) => finalArr2.push(e)); 
    arr3.forEach((e) => finalArr2.push(e)); 
  • spread

     
    const arr1 = Array.from({ length: 5000}).map((_, i) => i);
    const arr2 = Array.from({ length: 5000}).map((_, i) => i);
    const arr3 = Array.from({ length: 5000}).map((_, i) => i);
    const finalArr3 = [...arr1, ...arr2, ...arr3];