sort()函数对数组进行排序的步骤和示例代码。
发布时间:2023-06-23 11:06:51
sort()函数是JavaScript中的一个数组方法,用于对数组进行排序。它有两个参数, 个是可选的比较函数,第二个是可选的排序稳定性选项。
排序的步骤可以分为以下几个:
1. 将数组分成较小的数组,直到每个数组只有一个元素。
2. 按照指定的比较方法,比较相邻的元素。
3. 根据比较的结果,交换相邻的元素。
4. 重复上述步骤,直到完成排序。
示例代码如下:
// 未指定比较函数,按照字典序升序排序
let arr1 = ['apple', 'banana', 'pear', 'orange'];
arr1.sort();
console.log(arr1); // ['apple', 'banana', 'orange', 'pear']
// 指定比较函数,按照长度升序排序
let arr2 = ['apple', 'banana', 'pear', 'orange'];
arr2.sort((a, b) => a.length - b.length);
console.log(arr2); // ['pear', 'apple', 'banana', 'orange']
// 指定比较函数,按照长度升序排序并保持稳定性
let arr3 = [{name: 'apple', value: 3}, {name: 'banana', value: 2}, {name: 'pear', value: 3}, {name: 'orange', value: 1}];
arr3.sort((a, b) => a.value - b.value);
console.log(arr3); // [{name: 'orange', value: 1}, {name: 'banana', value: 2}, {name: 'apple', value: 3}, {name: 'pear', value: 3}]
在这些示例中, 个数组arr1按照字典序升序排序,第二个数组arr2按照长度升序排序,第三个数组arr3按照value属性升序排序,并且将相同的元素保持在相对顺序中不变。
