不知道大家對slice,splice,splite是腫么樣的感覺,反正我剛接觸到這三個函數的時候整個人都懵了,因為一個個長的跟孿生兄弟似的,每次用的時候都會混,於是決定記下來,也給大家當個參考吧。
- slice :
定義:接收一個或兩個參數,它可以創建一個由當前數組中的一項或多項組成的新數組,注意是新數組哦~ 也就是說它不會修改原來數組的值。
用法:slice( para1 ),會截取從para1開始的到原數組最后的部分;
slice(para1,para2)會截取原數組的從para1開始的para2-para1個數組。
注意:當兩個參數中存在負數時,用原數組的長度加上兩個負數的參數作為相應的參數來計算。
2. splice :
定義:強大的數組操作方法
用法 : splice( para1,para2 ) : 刪除數組中任意數量的項,從para1開始的para2項。注意的是用splice刪除數組中的值會直接將某幾項從數組中完全刪除,會導致數組length值的改變,這與delete的刪除置為undefined是不一樣的。
splice( para1,para2,val1,val2… ):項數組中添加和刪除項,para1表示可以添加的項數,para2表示刪除的項數,后面的變量表示要添加的項的值,注 意是從para1之后開始刪除和添加的。
注意 : 參數為負數的問題,如果para1為負數,則會加上數組的長度作為para1的值,而para2為負數或0的話不會執行刪除操作。
3.split : 根據特定的字符切割字符串並且返回生成的數組。
例如 : str = “s-aaa-sss-eee-www”;
targetArr = str.slite(“-”); //[‘s’,’aaa’,’sss’,’eee’,’www’]
現在看看其實這三位長相相近的函數都是與數組有關的,不過各自的功能還是有很大差異的~有了它們就方便我們的數組操作了。
