JS数组排序
以下是一个根据JavaScript数组排序的示例代码。代码中使用了数组的sort()方法,可以根据自定义的排序函数对数组进行排序。
// 定义一个待排序的数组
const arr = [
{ name: 'Tom', age: 23 },
{ name: 'Jerry', age: 25 },
{ name: 'Bob', age: 20 },
{ name: 'Alice', age: 24 },
];
// 自定义排序函数,按照年龄从小到大排序
function sortByAge(a, b) {
return a.age - b.age;
}
// 使用sort()方法进行排序,传递自定义排序函数作为参数
arr.sort((a, b) => sortByAge(a, b));
// 输出排序后的结果
console.log(arr);
自定义排序函数sortByAge():该函数接收两个参数,分别代表要比较的两个对象,返回值代表比较的结果,如果返回值为负数,则表示第一个对象应该排在第二个对象之前;如果返回值为正数,则表示第一个对象应该排在第二个对象之后;如果返回值为0,则表示两个对象相等。
然后使用数组的sort()方法进行排序,传递了自定义的排序函数作为参数。在sort()方法内部,会根据传递的排序函数对数组中的元素进行比较,从而完成排序操作。
如果运行上述代码,输出结果将会是:
[ { name: 'Bob', age: 20 },
{ name: 'Tom', age: 23 },
{ name: 'Jerry', age: 25 },
{ name: 'Alice', age: 24 } ]