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 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0
Browser:
Firefox 128
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Lo-Dash sortBy()
658649.1 Ops/sec
Underscore sortBy()
610433.4 Ops/sec
Vanilla sort()
2388315.5 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"));