复习一下:添加在首位:unshift 添加到末尾:push
删除第一个下标:shift 删除最后一个下标:pop
上面的都具有局限性,就是多多少少都带点下标限制!
难道就没有解决方法了吗?
有!splice()
注意两点,第一点:splice的值
splice(开始,删除个数,添加个数)
let i = ["秋刀鱼","瞪眼鱼","鱼"];
i.splice(2,0,"鲨鱼")
console.log(i);//(4) ['秋刀鱼', '瞪眼鱼', '鲨鱼', '鱼']
从第二个元素开始,没有删除,所以删除值是0,添加一个字符串位于第二个元素
第二个注意点,它返回的值是和删除中的pop与shift是一样的,返回给你删除的值,所以不会显示
let i = ["秋刀鱼","瞪眼鱼","鱼"];
let z = i.splice(2,0,"鲨鱼")
console.log(z);//(0) []
例子二
let i = ["秋刀鱼","瞪眼鱼","鱼"];
i.splice(1,2,"鲨鱼")
console.log(i);//['秋刀鱼', '鲨鱼']
删除个数有两个,但是添加值是不会被算进去的
返回值会影响添加或者删除吗?
不会!
小结
splice(开始下标,删除个数(开始下标可以算),添加内容)
返回值是被删除的值