教程 lodash tutorial

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

_.orderBy(collection, [iteratees=[_.identity]], [orders]) 用于根据指定的条件对集合进行排序,并返回排序后的新数组。

  • collection:要排序的集合,可以是数组、对象或类数组对象。
  • iteratees(可选):用于指定排序条件的函数或属性名称,默认为 _.identity 函数。
  • orders(可选):指定排序顺序的数组,每个元素可以是 'asc'(升序)或 'desc'(降序)。

应用举例:

javascript
// 原始集合
const collection = [
  { name: "John", age: 30 },
  { name: "Alice", age: 25 },
  { name: "Bob", age: 35 },
];

// 根据 'age' 属性升序排序
const resultAsc = _.orderBy(collection, ["age"], ["asc"]);

console.log(resultAsc);
// 输出:[ { name: 'Alice', age: 25 }, { name: 'John', age: 30 }, { name: 'Bob', age: 35 } ]

// 根据 'name' 属性降序排序
const resultDesc = _.orderBy(collection, ["name"], ["desc"]);

console.log(resultDesc);
// 输出:[ { name: 'John', age: 30 }, { name: 'Bob', age: 35 }, { name: 'Alice', age: 25 } ]

在这个例子中,_.orderBy 方法根据指定的属性名称对原始集合进行排序,并返回排序后的新数组。