小编典典

如何使用 underscore.js 进行 asc 和 desc 排序?

all

我目前正在使用 underscorejs 对我的 json 排序进行排序。现在我要求使用 underscore.js
进行排序ascendingdescending我在文档中没有看到任何相同的内容。我怎样才能做到这一点?


阅读 82

收藏
2022-08-19

共1个答案

小编典典

您可以使用.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])

// 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;
});
2022-08-19