侧边栏壁纸
博主头像
龍啓博主等级

行动起来,活在当下

  • 累计撰写 23 篇文章
  • 累计创建 23 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

lodash 数组排序

龍啓
2023-07-24 / 0 评论 / 0 点赞 / 81 阅读 / 1577 字

要对数组使用lodash进行排序,可以使用orderBy函数或sortBy函数。

orderBy函数:可以按照指定的属性或多个属性进行排序。你可以通过指定属性名称和排序顺序来对数组进行排序。

下面是使用orderBy函数的示例:

const _ = require('lodash');

const arr = [5, 1, 3, 2, 4];
const sortedArr = _.orderBy(arr);
console.log(sortedArr); // 输出: [1, 2, 3, 4, 5]

在上面的示例中,_.orderBy(arr)对数组arr进行升序排序。

如果你想要按照多个属性进行排序,可以传递一个数组给orderBy函数。数组中的每个元素都是要排序的属性名称。

下面是按照多个属性排序的示例:

const _ = require('lodash');

const arr = [
  { name: 'John', age: 30 },
  { name: 'Jane', age: 25 },
  { name: 'Bob', age: 35 }
];

const sortedArr = _.orderBy(arr, ['name', 'age'], ['asc', 'desc']);
console.log(sortedArr);

在上面的示例中,_.orderBy(arr, ['name', 'age'], ['asc', 'desc'])根据name属性按升序排序,对于具有相同name的元素,根据age属性按降序排序。

sortBy函数:根据指定的属性或转换函数对数组进行排序。

下面是使用sortBy函数的示例:

const _ = require('lodash');

const arr = [5, 1, 3, 2, 4];
const sortedArr = _.sortBy(arr);
console.log(sortedArr); // 输出: [1, 2, 3, 4, 5]

在上面的示例中,_.sortBy(arr)对数组arr进行升序排序。

如果你想要根据对象的某个属性排序,可以传递一个函数给sortBy函数,这个函数会返回用于排序的属性值。

下面是按照对象属性排序的示例:

const _ = require('lodash');

const arr = [
  { name: 'John', age: 30 },
  { name: 'Jane', age: 25 },
  { name: 'Bob', age: 35 }
];

const sortedArr = _.sortBy(arr, 'age');
console.log(sortedArr);

在上面的示例中,_.sortBy(arr, 'age')根据每个对象的age属性进行排序。

0

评论区