简单快速理解数组splice方法
splice方法功能强大,能简单快速实现遍历类方法加push等组合功能
下面小小的demo来总结下,帮助更快理解splice使用
//splice改变原始值
var arr = [1, 2, 3, 4, 5, 6, 7, 8]
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
var arr2 = [1, 2, 3, 4, 5, 6, 7, 8]
//一个参数
arr.splice(1) //删除index下标为1(包含)之后的所有
console.log(arr);
//两个参数
arr1.splice(1, 2) //删除index下标为1(包含)之后的2位
console.log(arr1)
//三个参数
arr2.splice(1, 0, 9, 10) //如第二个参数为0或负数,则在index为1的位置向数组内添加
console.log(arr2); // [1, 9, 10, 2, 3, 4, 5, 6, 7, 8]
arr2.splice(1, 1, 10) //如第二参数不为0,则删除index为1位置的数值,添加后面参数到数组
console.log(arr2); //[1, 10, 10, 2, 3, 4, 5, 6, 7, 8]
arr2.splice(1, 0) //如要对数组内容进行修改则第三个参数不能为空
console.log(arr2); //[1, 10, 10, 2, 3, 4, 5, 6, 7, 8]
总结:
一个参数的情况下:是删除的start(包含index本身的元素)和之后所有的元素;
两个参数:第一个参数是要删除的start(包含index本身的元素),第二个是删除的的元素;
三个参数或者多个参数:第一位是索引的start,第二个是删除的个数(包含index本身的元素),第三个参数几多个后面的参数是要在start索引位置要添加的元素
MDN:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/splice