我目前正在使用 underscorejs 对我的 json 排序进行排序。现在我要求使用 underscore.js 进行排序ascending。descending我在文档中没有看到任何相同的内容。我怎样才能做到这一点?
ascending
descending
您可以使用.sortBy,它总是会返回一个 升序 列表:
.sortBy
_.sortBy([2, 3, 1], function(num) { return num; }); // [1, 2, 3]
但是您可以使用.reverse方法使其 降序 :
var array = _.sortBy([2, 3, 1], function(num) { return num; }); console.log(array); // [1, 2, 3] console.log(array.reverse()); // [3, 2, 1]
或者在处理数字时,在返回中添加一个负号以降低列表:
_.sortBy([-3, -2, 2, 3, 1, 0, -1], function(num) { return -num; }); // [3, 2, 1, 0, -1, -2, -3]
在引擎盖下.sortBy使用内置.sort([handler]):
.sort([handler])
// Default is alphanumeric ascending: [2, 3, 1].sort(); // [1, 2, 3] // But can be descending if you provide a sort handler: [2, 3, 1].sort(function(a, b) { // a = current item in array // b = next item in array return b - a; });