(field, reverse, primer)
| 98 | } |
| 99 | |
| 100 | var sortBy = function (field, reverse, primer) { |
| 101 | var key = primer |
| 102 | ? function (x) { |
| 103 | return primer(x[field]) |
| 104 | } |
| 105 | : function (x) { |
| 106 | return x[field] |
| 107 | } |
| 108 | |
| 109 | reverse = !reverse ? 1 : -1 |
| 110 | |
| 111 | return function (a, b) { |
| 112 | a = key(a) |
| 113 | b = key(b) |
| 114 | return reverse * ((a > b) - (b > a)) |
| 115 | } |
| 116 | } |