Script Preparation code:
x
 
var sampleData = [];
for (var i=0; i < 1000; i++){ 
  sampleData.push({value: (Math.floor(Math.random() * 1000))});
}
var selectorFn = function(x) { 
  return x.value;  
}
Tests:
  • Native Sort DESC

     
    var order = "desc";
    sampleData.sort(function(a,b){
        var x = selectorFn(a); var y = selectorFn(b);
        var res = ((x < y) ? -1 : ((x > y) ? 1 : 0));
        return order === "desc" ? -1*res : res;
    })
  • Native Sort ASC

     
    var order = "asc";
    sampleData.sort(function(a,b){
        var x = selectorFn(a); var y = selectorFn(b);
        var res = ((x < y) ? -1 : ((x > y) ? 1 : 0));
        return order === "desc" ? -1*res : res;
    })
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Native Sort DESC
    Native Sort ASC

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 8 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
Chrome 52 on Windows
View result in a separate tab
Test name Executions per second
Native Sort DESC 251.0 Ops/sec
Native Sort ASC 245.4 Ops/sec