1. 程式人生 > >slice,splice,splite區別

slice,splice,splite區別

 

  1. 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.split(“-”);    //[‘s’,’aaa’,’sss’,’eee’,’www’]