一、语法以及描述
说明:通过添加、删除、修改元素来修改数组
语法:Array.splice(start[, deleteCount[, item1, …]])
参数:
start : 开始位置
deleteCount : 删除的元素个数
item, item2… : 添加的元素
返回值:始终是删除的元素集合,如果删除数量为 0,则返回空数组
是否改变原数组:是
splice是数组的一个方法,使用这个方法可以改变原来的数组结构,splice ( index , howmany , itemX ) ;这个方法接收三个参数,我们在使用的时候可根据自己的情况传递一个参数,或者两个参数,或者三个参数;
总结splice()这个方法就是可以删除数组中的项,也可以向数组中添加新的项
splice(0): 将原数组进行清空
传递一个参数时:
传递一个参数的时候表示从这个参数的位置开始一直截取到最后
var arr = [2,4,6,7,8,9];
console.log(arr);//[2,4,6,7,8,9]
var n = arr.splice(2);//参数为2表示从索引下标为2的位置开始一直截取到数组的最后;
console.log(n);//[6,7,8,9]//splice()返回的是截取到的数组
console.log(arr);//[2,4]//原来的数组结构发生改变,为splice截取之后剩下的数组
传递两个参数时:
传递两个参数,第一个参数表示开始的位置,第二个参数表示要截取的个数;如果第二个参数为0,则表示不截取,返回的空数组,原来的数组不变
var arr = [2,4,6,7,8,9];
console.log(arr);//[2,4,6,7,8,9]
var n = arr.splice(2,3);//表示从下标位置为2开始截取3个数
console.log(n);//[6, 7, 8]
console.log(arr);//[2,4,9]
传递三个参数时:
var arr = [2,4,6,7,8,9];
console.log(arr);//[2,4,6,7,8,9]
var n = arr.splice(2,0,5);//表示在下标为2的位置,截取0个数组,在下标为2的位置添加一个新项
console.log(n);//[]
console.log(arr);//[2, 4, 5, 6, 7, 8, 9]
当第二个参数不为0的时候
var arr = [2,4,6,7,8,9];
console.log(arr);//[2,4,6,7,8,9]
var n = arr.splice(2,3,5);//表示从下标为2的位置开始,删除3个项,在下标为2的位置添加一个数字为5的新项
console.log(n);//[6, 7, 8]
console.log(arr);//[2, 4, 5, 9]