集中整理一下数组的常用方法:
push()
含义:向数组的末尾追加一个或多个元素
const arr = [1,2,3]
arr.push(5,6)
console.log(arr) // [1,2,3,5,6]
unshift()
含义:向数组的开头追加一个或多个元素
const arr = [1,2,3]
arr.unshift(5,6)
console.log(arr) // [5,6,1,2,3]
pop()
含义:删除数组的最后一个元素
const arr = [1,2,3]
arr.pop()
console.log(arr) // [1,2]
shift()
含义:删除数组的第一个元素
const arr = [1,2,3]
arr.shift()
console.log(arr) // [2,3]
concat()
含义:拼接数组
// 拼接两个数组
const a = [1,2,3]
const b = [4,5,6]
const c = a.concat(b)
console.log(c) // [1,2,3,4,5,6]
// 拼接更多数组
const a = [1,2,3]
const b = [4,5,6]
const c = [7,8,9]
const d= c.concat(a,b)
console.log(d) // [7,8,9,1,2,3,4,5,6] 注意拼接的顺序,我这边是c数组在前面
slice()
含义:截取数组
// 两个参数
// 参数1:从何处(下标)开始截取
// 参数2:从何处(下标)结束截取
const a = ['a','b','c','d','e','f','g']
const b=a.slice(2,4);
console.log(b) // ['c','d']
// 一个参数
// 参数:从何处(下标)开始截取,一直截取到最后一项
const a = ['a','b','c','d','e','f','g']
const b=a.slice(2);
console.log(b) // ['c','d','e','f','g']
从上面的例子可以看出:
- 当传两个参数时,截取的内容包括起始索引下标数据['c'],不包括结束索引下标的数据['e']
- 当只有一个参数时,截取的内容从起始索引下标数据['c'],一直到数组的最后一项(包括最后一项['g'])
splice()
含义:删除/新增数组
// 一个参数:默认删除参数后边的所有元素
const a = [1,2,3,4,5,6];
const b = a.splice(4)
console.log(a) // [1, 2, 3, 4]
console.log(b); // [5,6]
// 两个参数
// 第一个参数为指定删除的起始位置,
// 第二个参数为要删除的个数
const a = [1,2,3,4,5,6];
const b = a.splice(2,2)
console.log(a) // [1,2,5,6]
console.log(b); // [3,4]
// 两个以上参数
// 第一个参数为指定插入的起始位置,
// 第二个参数为要删除的个数
// 之后的参数表示需要插入到数组中的元素 。
const a = [1,2,3,4,5,6];
const b = a.splice(2,2,7,8) // 从第二位起删除2个元素,添加7,8到原数组
console.log(a) // [1,2,7,8,5,6]
console.log(b); // [3,4]
every()、some()
含义:every() 判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。
some() 判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。
const arr = [1, 2, 3];
arr.every(x=>x>0); // return true;
arr.every(x=>x>2); // return false;
arr.some(x=>x>2); // return true;