orderBy

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

这个方法类似 _.sortBy,除了它允许指定 iteratees 结果如何排序。 如果没指定 orders,所有值以升序排序。 其他情况,指定 "desc" 降序,指定 "asc" 升序其对应值。

参数

  1. collection (Array|Object)

    需要遍历的集合

  2. [iteratees=[_.identity]] (Function[]|Object[]|string[])

    通过 iteratees 决定排序

  3. [orders] (string[])

    决定 iteratees 的排序方法

返回值 (Array)

排序排序后的新数组

示例

var users = [
  { 'user': 'fred',   'age': 48 },
  { 'user': 'barney', 'age': 34 },
  { 'user': 'fred',   'age': 42 },
  { 'user': 'barney', 'age': 36 }
];

// 以 `user` 升序排序 再 以 `age` 降序排序。
_.orderBy(users, ['user', 'age'], ['asc', 'desc']);
// => 结果: [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]