欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

reverse(),sort()

程序员文章站 2024-01-13 22:25:40
...

reverse()

作用:将数组中元素的位置颠倒,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。该方法会改变原数组。

语法

arr.reverse()

返回值:颠倒后的数组。

实例

let arr=['a','b','c','d'];
arr.reverse();
console.log(arr);//["d", "c", "b", "a"]

sort()

作用:用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的

语法

arr.sort([compareFunction])
  • 参数
    compareFunction 可选:用来指定按某种顺序进行排列的函数。如果省略,元素按照转换为的字符串的各个字符的Unicode位点进行排序。
    firstEl:第一个用于比较的元素。secondEl:第二个用于比较的元素。
  • 返回值
    排序后的数组。请注意,数组已原地排序,并且不进行复制。

实例

let arr=['green','black','white','yellow'];
arr.sort();
console.log(arr);// ["black", "green", "white", "yellow"]
let arr1=[3,'ab','3',10,'r'];
arr1.sort();
console.log(arr1);//[10, 3, "3", "ab", "r"]

上面例子中只是按照Unicode位点进行排序,如果我们数字要进行正确的排序就需要使用函数进行比较大小,如下。

let arr=[4,41,10,8,91,19];
function compareNum(a,b)
{
  return a-b;
}
arr.sort(compareNum);
console.log(arr);//[4, 8, 10, 19, 41, 91]

使用箭头函数:

let arr=[4,41,10,8,91,19];
arr.sort((a,b)=>a-b);
console.log(arr);//[4, 8, 10, 19, 41, 91]