HTML Preparation code:
AخA
 
1
<!--your preparation HTML code goes here-->
Script Preparation code:
 
/*your preparation JavaScript code goes here
To execute async code during the script preparation, wrap it as function globalMeasureThatScriptPrepareFunction, example:*/
async function globalMeasureThatScriptPrepareFunction() {
    // This function is optional, feel free to remove it.
    // await someThing();
}
Tests:
  • copy

    x
     
    var getConcatenation = function(nums) {
      let ans = [];
      for (i = 0; i < nums.length; i++) {
        ans[i] = nums[i];
        ans[i + nums.length] = nums[i];
      }  
      return ans;
    };
    let largeArray = Array.from({ length: 10_000_000 }, (_, i) => i);
    getConcatenation(largeArray);
  • concat

     
    var getConcatenation = function (nums) {
      return nums.concat(nums);
    };
    let largeArray = Array.from({ length: 10_000_000 }, (_, i) => i);
    getConcatenation(largeArray);
  • in place

     
    var getConcatenation = function(nums) {
      const len = nums.length;
      for (i = 0; i < len; i++) {
        nums[i + len] = nums[i];
      }  
      return nums;
    };
    let largeArray = Array.from({ length: 10_000_000 }, (_, i) => i);
    getConcatenation(largeArray);
  • Spread operator

     
    /**
     * @param {number[]} nums
     * @return {number[]}
     */
    var getConcatenation = function (nums) {
           return [...nums, ...nums];
    };
    let largeArray = Array.from({ length: 10_000_000 }, (_, i) => i);
    getConcatenation(largeArray);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    copy
    concat
    in place
    Spread operator

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 4 months ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36
Chrome 129 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
copy 1.1 Ops/sec
concat 3.3 Ops/sec
in place 1.8 Ops/sec
Spread operator 2.3 Ops/sec