JavaScript-sort()排序
JavaScript 中的 sort()
方法用于对数组的元素进行排序。
sort()
方法可以接受一个比较函数作为参数,这个比较函数有两个参数,分别代表数组中被比较的两个元素。比较函数应该返回一个负数、零或正数,代表排序顺序。如果第一个参数比第二个参数小,应该返回负数;如果两者相等,返回零;第一个参数比第二个参数大时返回正数。
以下是一个使用 sort()
方法的例子,对一个数字数组进行排序:
let numbers = [4, 2, 9, 3, 5, 1];
numbers.sort((a, b) => a - b); // 升序
console.log(numbers); // 输出: [1, 2, 3, 4, 5, 9]
numbers.sort((a, b) => b - a); // 降序
console.log(numbers); // 输出: [9, 5, 4, 3, 2, 1]
如果数组元素是字符串,可以直接使用 sort()
进行字典顺序排序:
let fruits = ['apple', 'banana', 'cherry', 'date'];
fruits.sort();
console.log(fruits); // 输出: ['apple', 'banana', 'cherry', 'date']
如果数组元素是对象,可以根据对象的某个属性进行排序:
let users = [
{ name: 'Alice', age: 25 },
{ name: 'Bob', age: 18 },
{ name: 'Charlie', age: 22 }
];
users.sort((a, b) => a.age - b.age); // 按年龄升序
console.log(users);
users.sort((a, b) => b.age - a.age); // 按年龄降序
console.log(users);
注意:当数组元素为纯字符串或数字时,sort()
默认按字典顺序排序;对于数字排序,可以简单地用 (a, b) => a - b
或 (a, b) => b - a
进行升序或降序排序。
评论已关闭