1.slice
(1)只给一个参数,则返回从参数(下标)开始到数组最后一个值的所有数据
有两个参数,slice(参数1,参数2)
(2)参数1代表起始下标
(3)参数2代表结束下标
(4)获取从参数1开始到参数2结束的范围内的数据(注:不包含参数2下标的数据)
注:1、不会改变原数组的数据 2、当条件不满足时返回空数组 3、参数是负值的时候,则参数=参数+数组长度
let arr = ["A", "B", "C", "D", "E", "F", "G"];
result = arr.slice(3, 5); //["D", "E"]
console.log(result);
result = arr.slice(0, 4);
console.log(result); //["A", "B", "C", "D"]
result = arr.slice(7);
console.log(result); //[]
result = arr.slice(-3);
console.log(result); // ["E", "F", "G"]
result = arr.slice(-4, -1);
console.log(result); //["E", "F"]
2.splice
功能:splice() 方法对数组进行删除、插入、替换,是最强大的数组方法,返回值是数组,会改变原数组。
用法:
splice(参数)
-
1、只给一个参数,则返回从参数(下标)开始到数组最后一个值的所有数据
-
2.splice(参数1,参数2) :1、参数1代表起始下标 2、参数2代表(个数)3、获取从参数1的下标开始,截取参数2的个数的数据
-
3.当传3个参数
splice(参数1,参数2,参数3)
1、若第2个参数为0,则代表插入:参数1:起始下标 参数2:0 参数3:插入的值
2、若第2个参数不为0,则代表修改:参数1:起始下标 参数2:n(修改数据的个数)参数3:修改后的值
-
4.当传入多个参数
splice(参数1,参数2,参数3..参数n)
1、参数2为0,参数3及以后的参数为插入的数据
注:插入到参数1之前
2、参数2不为0,参数3及以后的参数为修改的数据
注:即从参数1开始,往后数参数2个数据,修改成参数3及3以后的数据
-
例如: let arr = ["A", "B", "C", "D", "E", "F", "G"]; let result; result = arr.splice(1, 4); console.log(result, arr); //["B", "C", "D", "E"] , ["A", "F", "G"] // 修改 result=arr.splice(0,4,2); console.log(result,arr);//[ 'A' ] [ 2, 'F', 'G' ] // 插入 result=arr.splice(1,0,2); console.log(arr);//[ 'A', 2, 'B', 'C','D', 'E', 'F', 'G' ]