Node.js lodash.sortBy() 函数

2025年2月14日 | 阅读 4 分钟

在本文中,您将学习 Node.js lodash.sortBy() 函数,包括其语法、参数和示例。

什么是 Node.js lodash.sortBy() 函数?

Underscore.js 可以通过使用 Lodash 进行扩展,Lodash 是一个流行的 Node.js 工具库。它提供的一系列函数使处理数组、字符串、对象、数字和其他数据类型更加容易。_.sortBy() 方法是其有用的方法之一。它按照预定的标准以升序对数组进行排序。通过提供一个或多个迭代器来排序元素,此方法可以处理复杂的排序需求。

语法

它具有以下语法:

参数

  • Collection(集合):需要排序的元素组。
  • [iteratees=[_.identity]](迭代器):一个可选参数,指示排序的标准。它可以接受表示属性名称的字符串或函数数组。如果未提供 identity 函数 (_.identity),则元素将根据其自然顺序进行排序。

返回值

返回已排序的集合。

示例 1

让我们通过一个例子来说明 Node.js lodash.sortBy() 函数。

输出

 
 Before sorting, the elements are: [ 3, 2, 7, 6, 4, 8 ]
After sorting, the elements are: [ 2, 3, 4, 6, 7, 8 ]  

说明

在此示例中,使用变量 "l" 导入 Lodash 库。此 Node.js 代码段还创建了一个包含数字元素 [3, 2, 7, 6, 4, 8] 的数组。之后,使用 console.log() 将数组记录到控制台,以显示未排序数组的初始状态。接下来,使用 Lodash 的 _.sortBy() 函数对数组的元素进行升序排序。由于未提供迭代器,因此使用元素的自然顺序进行排序。排序后的数组元素以升序显示,并记录到控制台。为了提高代码的可读性和可维护性,此代码演示了 Lodash 如何简化 JavaScript 中的排序操作。它提供了一种以最小的努力对数组进行排序的实用方法。

示例 2

让我们通过另一个例子来说明 **Node.js lodash.sortBy()** 函数。

输出

 
 Before sorting, the elements are: 
4,8,2,z,a,g,28
After sorting, the elements are: 
2,4,8,28,a,g,z  

说明

在此 Node.js 代码片段中,使用变量 "l" 导入 Lodash 库。构造了一个数组 a,其中包含字符串和数字元素的组合 [4, 8, 2, "z", "a", "g", "28"]。使用 console.log() 方法,将数组的初始状态以及换行符记录到控制台以获得更好的格式。之后,使用 Lodash 的 _.sortBy() 方法对数组的元素进行排序。但是,由于元素是混合类型,Lodash 会根据它们的自然顺序对它们进行排序,这可能不会以预期的方式对非数字值进行排序。排序后,数组会再次与换行符一起显示元素,记录到控制台。

示例 3

让我们通过另一个例子来说明 **Node.js lodash.sortBy()** 函数。

输出

 
 [
  { name: 'John', age: 30 },
  { name: 'Joseph', age: 35 },

  { name: 'Peter', age: 25 }
]
[
  { name: 'Peter', age: 25 },
  { name: 'John', age: 30 },
  { name: 'Joseph', age: 35 }
]  

说明

在此 Node.js 代码中,使用导入为 _ 的 Lodash 库来排序元素数组。元素数组中的每个对象代表一个用户,并具有 name 和 age 属性。"_.sortBy() 函数" 用于演示两种不同的排序过程。第一个操作使用每个对象的 name 属性对 elements 数组进行排序,并将结果存储在 sortingByName 变量中。通过使用他们的名字,用户按字母顺序排序。与第一个操作类似,第二个操作通过按 age 属性对 elements 数组进行排序来按年龄升序排序名称,该属性存储在 sortingByAge 变量中。为了显示排序后的用户列表,两个排序后的数组最终都记录在控制台中。

此代码演示了 Lodash 如何通过使开发人员能够轻松提供排序标准来简化排序,从而提高了代码的可读性和可维护性。