用lodash实现JavaScript数组对象排序

原文来自:Bloghome博客
原文地址:https://www.bloghome.com.cn/post/yong-lodashshi-xian-javascriptshu-zu-dui-xiang-pai-xu.html

原生的数组对象排序的方法比较复杂,需要写自定义函数,可以参考这篇文章,作者这里介绍的是使用lodash的orderBy方法来实现数组对象的排序:

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

参数
collection (Array|Object)
需要遍历的集合

[iteratees=[_.identity]] (Function[]|Object[]|string[])
通过 iteratees 决定排序

[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]]

你可能感兴趣的:(用lodash实现JavaScript数组对象排序)