slice、splice、splite區別


這三個長得很像,具體功能卻差很多。

slice:

定義:接收一個或兩個參數,它可以創建一個由當前數組中的一項或多項組成的新數組。返回為新數組,以前的數組沒有變化。

var allArray = [1,2,3,4];
var sliceArray = allArray.slice(1,2);

此時allArray還是[1,2,3,4],silceArray是[2]

splice:

一個強大的js數組操作方法,可以完成刪除、插入、替換(刪除+插入)功能。

arrayObject.splice(index,howmany,item1,.....,itemX),

第一個參數是刪除的出發點,第二個是數量,第三個和之后的是插入的內容,從第一個參數開始的位置插入。
var all=[1,2,3,4,5,6];
all.splice(1,2,7);

splice返回刪除的內容是[2,3],從數組標識1開始2位,此時輸出all則是[1,7,4,5,6]

 

split:

var str="1-2-3-4";
var spliteStr = str.split("-");

split返回數組[1,2,3,4]

 

在阮一峰老師的文章中看到一段代碼

// splice用來替換數組元素,它接受多個參數,
    // 第一個是開始替換的位置,第二個是需要替換的個數,后面就是所有新加入的元素。
    // 因為splice不接受數組作為參數,所以采用apply的寫法。
    // 這一句的意思就是原來的myArray數組替換成排序后的myArray
    myArray.splice.apply(myArray, params);

myArray是原數組,第一個myArray可以改成空數組,為了使用splice方法,然后參數中的myArray是原數組,params是需要替換的數組,這個數組前兩位設置成0,params原來的長度,為了當做splice的function中的前兩個參數。后面的就是排過序的結果。很靈巧


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM