JS数组的操作方法 :增、删、改、查
1. 增--------------------------------------------------------------
- push()
- unshift()
- splice()
- concat()
1.1 push()
在数组的末尾追加任意数量元素
let arrs= []; // 创建一个数组
let count = arrs.push("a", "b");
console.log(arrs) // ['a','b']
console.log(count ) // 2
1.2 unshift()
在数组开头添加任意数量元素
let arrs= ['c']; // 创建一个数组
let count = arrs.unshift("a", "b");
console.log(arrs) // ['a','b','c']
console.log(count ) // 2
1.3 splice()
替换/添加/删除 一段元素
三个参数 :
- 必填。整数,指定在什么位置添加/删除元素,使用负值指定从数组末尾开始的位置。
- 选填。要删除的元素数。如果设置为 0,则不会删除任何项目。
- 选填。要添加到数组中的新元素。
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.splice(1,0,"d", "e"); // 从索引为1开始,删除0个元素,添加 'd','e'
console.log(arrs) // ['a','d','e','b','c']
console.log(count ) // [] 新数组,包含删除的元素(如果有)。
1.4 concat()
在被拼接的数组的末尾拼接任意数量的元素或数组
let arrs= ['a','b','c']; // 创建一个数组
let arrs2= ['d','e','f']; // 创建一个数组
let newArr=arrs.concat('d',arrs2,['g','h']) //拼接会按照先后顺序
console.log(newArr) // ['a', 'b', 'c', 'd', 'd', 'e', 'f', 'g', 'h']
2. 删------------------------------------------
- pop()
- shift()
- splice()
- slice()
2.1 pop()
删除数组末尾最后一项
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.pop();
console.log(arrs) // ['a','b']
console.log(count ) // c
2.2 shift()
删除数组开头第一项
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.shift();
console.log(arrs) // ['b','c']
console.log(count ) // a
2.3 splice()
替换/添加/删除 具体用法说明查看1.3所示
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.splice(0,1); //从索引0开始 ,删除一个
console.log(arrs) // ['b','c']
console.log(count ) // a
2.4 slice()
截取数组某一截 ,返回新的数组
两个参数 :
- 可选。整数,指定从哪里开始选择(第一个元素的索引为 0)。
- 可选。整数,指定结束选择的位置。
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.slice(0,1);
let count2 = arrs.slice(); // 默认0开始,末尾结束
console.log(arrs) // ['a','b','c']
console.log(count ) // ['a']
console.log(count2 ) // ['a','b','c']
3. 改------------------------------------
- splice() 【常用】
3.1 splice()
替换/添加/删除 具体用法说明查看1.3所示
let arrs= ['a','b','c']; // 创建一个数组
let count = arrs.splice(0,1,'e'); //从索引0开始 ,删除一个 ,替换为 e
console.log(arrs) // ['e','b','c']
console.log(count ) //['a']
4. 查----------------------------------
- indexOf()
- includes()
- find()
4.1 indexOf()
返回元素在数组中的的索引值,没有则返回-1
所以可以根据返回的索引是否为-1 就可判断该数组是否包含该元素
let numbers = ['a', 'b', 'c', 'd', 'e', 'f'];
let i = numbers.indexOf('d')
console.log(i); // 3
4.2 includes()
返回元素是否存在该元素的布尔值,存在为true,否则false
let numbers = ['a', 'b', 'c', 'd', 'e', 'f'];
let i = numbers.includes('d')
console.log(i); // true
4.3 find()
通过遍历,返回第一个符合条件的元素,剩下的不会检测直接跳过
参数:
回调函数 回调函数有三个参数:
1.当前的元素 2.当前元素的索引【选填】 3.当前元素的所属数组对象【选填】
const nums = [1, 2, 3, 4, 5, 6];
const num = nums.find((item, index, arr) => {
return item >= 5 // 返回 大于等于 5 的数
});
console.log(num); // 5