Lodash - orderBy 方法

语法

_.orderBy(collection, [iteratees=[_.identity]], [orders])

此方法与 _.sortBy 类似,不同之处在于它允许指定要排序的迭代器的排序顺序。如果未指定 order,则所有值均按升序排序。否则,请指定"desc"以表示降序,或"asc"以表示相应值的升序排序。

参数

  • collection (Array|Object) −要迭代的集合。

  • [iteratees=[_.identity]] (Array[]|Function[]|Object[]|string[]) − 要排序的迭代器。

  • [orders] (string[]) − 迭代器的排序顺序。

输出

  • (Array) − 返回新的排序数组。

示例

var _ = require('lodash');
var users = [
   { 'user': 'Joe', 'age': 48 },
   { 'user': 'Robert', 'age': 34 },
   { 'user': 'Julie', 'age': 40 },
   { 'user': 'Stafey', 'age': 36 }
];
var result = _.orderBy(users, ['user', 'age'], ['asc', 'desc']);
console.log(result);

将上述程序保存在tester.js中。运行以下命令执行该程序。

命令

\>node tester.js

输出

[
   { user: 'Joe', age: 48 },
   { user: 'Julie', age: 40 },
   { user: 'Robert', age: 34 },
   { user: 'Stafey', age: 36 }
]

lodash_collection.html