Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
vanilla vs lo-dash vs underscore sortBy()
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:124.0) Gecko/20100101 Firefox/124.0
Browser:
Firefox 124
Operating system:
Ubuntu
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Lo-Dash sortBy()
701724.6 Ops/sec
Underscore sortBy()
641173.4 Ops/sec
Vanilla sort()
2739649.0 Ops/sec
HTML Preparation code:
<script src='https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js'></script> <script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
let fruits = [ {name:"mango", amount: 1}, {name:"apple", amount: 4}, {name:"banana", amount: 2}, {name:"pineapple", amount: 2}, {name:"apple", amount: 2} ] const sortBy = (key) => { return (a, b) => (a[key] > b[key]) ? 1 : ((b[key] > a[key]) ? -1 : 0); }; fruits.sort(sortBy("name"));
Tests:
Lo-Dash sortBy()
let fruits = [ {name:"mango", amount: 1}, {name:"apple", amount: 4}, {name:"banana", amount: 2}, {name:"pineapple", amount: 2}, {name:"apple", amount: 2} ] _.sortBy(fruits, 'name')
Underscore sortBy()
let fruits = [ {name:"mango", amount: 1}, {name:"apple", amount: 4}, {name:"banana", amount: 2}, {name:"pineapple", amount: 2}, {name:"apple", amount: 2} ] _.sortBy(fruits, 'name')
Vanilla sort()
let fruits = [ {name:"mango", amount: 1}, {name:"apple", amount: 4}, {name:"banana", amount: 2}, {name:"pineapple", amount: 2}, {name:"apple", amount: 2} ] const sortBy = (key) => { return (a, b) => (a[key] > b[key]) ? 1 : ((b[key] > a[key]) ? -1 : 0); }; fruits.sort(sortBy("name"));