_.orderBy(collection, [iteratees=[_.identity]], [orders])
_.orderBy(collection, [iteratees=[_.identity]], [orders]) 用于根据指定的条件对集合进行排序,并返回排序后的新数组。
collection:要排序的集合,可以是数组、对象或类数组对象。iteratees(可选):用于指定排序条件的函数或属性名称,默认为_.identity函数。orders(可选):指定排序顺序的数组,每个元素可以是'asc'(升序)或'desc'(降序)。
应用举例:
// 原始集合
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 方法根据指定的属性名称对原始集合进行排序,并返回排序后的新数组。
相关内容
- 介绍 Lodash:简化 JavaScript 编程,提供高效的集合操作和函数式编程支持。
- \_.chunk(array, [size=1]) _.chunk(array, [size=1]) 创建一个元素数组,将其分为长度为 size 的组。 如果数组不能均匀分割,则最终的块将是剩余的元素。
- \_.compact(array) _.compact(array) 创建一个删除所有错误值的数组。 值 false、null、0、""、undefined 和 NaN 均为 false。
- \_.concat(array, [values]) _.concat(array, [values]) 创建一个新数组,将数组与任何其他数组和/或值连接起来。
- \_.difference(array, [values]) _.difference(array, [values]) 使用 SameValueZero 进行等价比较,创建一个数组,其中的数组值不包含在其他给定数组中。结...
- \_.differenceBy(array, [values], [iteratee=_.identity]) .differenceBy(array, [values], [iteratee=.identity]) 该方法与 _.difference 类似,但它接受 i...