首先說一下什么是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個元素拼到開頭