1 | export 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 | }
|