JavaScript的数组
数组常用方法
- length()
- indexOf()
- slice()
- push()
- pop()
- shift()
- unshift()
- sort()
- reverse()
- splice()
- concat()
- join()
部分方法使用方法详解
上述的是JavaScript中数组涉及的方法,对于其中不常用的部分不做解释。
slice
slice()就是对应String的substring()版本,它截取Array的部分元素,然后返回一个新的Array。
let arr = [1, 2, 3, 4, 5];
arr.slice(1, 4);
从索引1开始,到索引4结束,不包含索引4,[1, 4)。
slice(a, b),a的默认值是0,b的默认值是数组尾;a、b都不传,获取整个数组,这个性质可以用来copy一个数组。
pop
pop()删除数组的最后一个元素,注意:空数组继续pop不会报错,会返回undefined。
shift和unshift
unshift():在数组头部添加元素;
shift():删除数组第一个元素;
let arr = [1, 2];
arr.unshift(3, 4); // arr:[3, 4, 1, 2]
arr.shift()
空数组继续shift不会报错,返回undefined。
sort
对数组进行排序,从小到大。
sort()是一个高阶函数,可以接收一个自定义的比较函数作为参数。sort支持自定义方法排序,自定义比较函数要求:
对于两个元素x和y,如果认为x < y,则返回-1,如果认为x == y,则返回0,如果认为x > y,则返回1。
let arr = [10, 20, 1, 2];
arr.sort(function (x, y) {
if (x < y) {
return -1;
}
if (x > y) {
return 1;
}
return 0;
});
console.log(arr); // [1, 2, 10, 20]