UNPKG

338 BJavaScriptView Raw
1export function sortBy(sortFn, list){
2 if (arguments.length === 1) return _list => sortBy(sortFn, _list)
3
4 const clone = list.slice()
5
6 return clone.sort((a, b) => {
7 const aSortResult = sortFn(a)
8 const bSortResult = sortFn(b)
9
10 if (aSortResult === bSortResult) return 0
11
12 return aSortResult < bSortResult ? -1 : 1
13 })
14}