Slice benchmark

[].slice.call vs Array.prototype.slice.call

by azproduction

HTML

<div id="sandbox"></div>
<div id="result"></div>

CSS

body {
   font-family: Arial;
   font-size: 12px;
}
#sandbox {
   visibility: none;
}

td, th{
   padding: 5px;
   color: #333;
}

th {
   background: #EEE;
   color: #555;
   border-bottom: 1px solid #AAA;
}

td {
   text-align: center;
   border-bottom: 1px solid #EEE;
}

abbr {
   border-bottom: 1px dashed #777;
}

JavaScript

/*
 Benchmark Skeleton
 */



// 1. Update configuration
var NUMBER_OF_ITERATIONS = 1e6;
var RESULT_ELEMENT = this.document.getElementById('result');
var TEST_OUTPUT = [];
var TEST_NAME = "Slice benchmark ";
var C = 1;

// 2. Put test resources below

// 3. Use test skeleton to add a tests


// Test Skeleton -----------------------------+
TEST_OUTPUT.push(function(___,____,_,__){/////|    Test 1
// Your vars ---------------------------------+

    var dt = '1234567890';
    
// -------------------------------------------+
__=new Date();while(_--){/////////////////////|
// Your code ---------------------------------+
    
    dt = [].slice.call(dt, 2, 3);

// -------------------------------------------+
};return {n:___,t:new Date()-__};/////////////|
}(TEST_NAME+'[].slice.call',this,NUMBER_OF_ITERATIONS));//|
// -------------------------------------------+



// Test Skeleton -----------------------------+
TEST_OUTPUT.push(function(___,____,_,__){/////|    Test 2
// Your vars ---------------------------------+

    var dt = '1234567890';
    
// -------------------------------------------+
__=new Date();while(_--){/////////////////////|
// Your code ---------------------------------+

    dt = Array.prototype.slice.call(dt, 2, 3);

// -------------------------------------------+
};return {n:___,t:new Date()-__};/////////////|
}(TEST_NAME+'Array.prototype.slice.call',this,NUMBER_OF_ITERATIONS));//|
// -------------------------------------------+




// 4. Render results
(function (e, r, c, i, o, n) {
    o += "<table><tr><th>Test</th><th>Result, sec</th><th>Result, <abbr title=\"Calls Per Second\">CPS</abbr></th></tr>";
    for (; i < c; i += 1) {
        o += "<tr><td>" + r[i].n + "</td><td>" + r[i].t + "</td><td>" + (~~((n/r[i].t) * 100)/100) + "</td></tr>";
    }
    e.innerHTML = o;
}(RESULT_ELEMENT, TEST_OUTPUT, TEST_OUTPUT.length, 0, '', NUMBER_OF_ITERATIONS));