首先说一下什么是splice?
splice
splice说白了就是拼接的意思。
不管是对数组进行,删除,替换还是插入操作都可以用splie给数组重新粘合起来成为一个新的数组。
splice主要功能是对数组进行修改(删除、替换、插入)
删除元素:
arr.splice(starti,n)//删除arr中starti位置开始的n个元素
强调:直接修改原数组,不用考虑含头不含尾。
简写的方式:支持负数参数,表示倒数第n个,省略第二个参数,删除starti位置后所有元素。
有返回值:返回被删除的元素组成的临时数组。
var deletes=arr.splice(starti,n)
插入元素:
arr.splice(starti,0,值1,值2,...)//在arr中starti位置插入新值,原starti位置的值及其之后的值被向后顺移
强调:不支持打散数组类型参数,如果插入子数组,会变成二维数组。
替换:
arr.splice(starti,n,值1,值2...)//先删除arr中starti位置的n个元素,再在starti位置插入新元素
强调:删除的元素个数不一定和插入的元素个数一致
固定套路:比如广告轮播
imgs=imgs.concat(imgs.splice(0,n))//移除开头的n个元素拼到结尾
imgs=imgs.splice(-n).concat(imgs)//移除结尾的n个元素拼到开头