數組 slice方法和splice方法的區別


一、slice() 方法

slice()方法可以從已有的數組中返回選定的元素。

語法:

arrayObject.slice(start,end)

參數:

       start:(截取開始位置的索引,包含開始索引)必須,規定從何處開始選取。如果是負數,那么它規定從數組尾部開始算起的位置。(-1指的是最后一個元素,-2指倒數第二個元素,以此類推)。

       end:(截取結束位置的索引,不包含結束索引)可選,規定從何處結束選取。該參數是數組片段結束處的數組下標,如果沒有指定該參數,那么切分的數組包含從 start(開始處)到數組結束的所有元素。如果這個參數是負數,那么它規定的是從數組尾部開始算起的元素。

返回值:

返回一個新的數組,包含從 start 到 end(不包含end的這個元素)的數組對象(arrayObject)中的元素。

注意

1、slice 方法並不會修改數組,而是會返回一個子數組。如果想刪除一段元素,應該使用方法Array.splice()

2、可以使用負值從尾部選取元素。

3、如果 end未被規定,那么 slice() 方法會選取從 start到數組結尾的所有元素。


 

實例:

使用slice() 方法選取已有數組中的元素

var arr=["大雪","小雪","霜降","立冬"] console.log(arr.slice(1,3)); console.log(arr.slice(1)); console.log(arr.slice(-3,-1));

 

二、splice() 方法

splice() 方法可以用於插入、刪除或是替換數組的元素

語法:

arrayObject.splice(index,howmany,element1,.....,elementX)

參數:

    index,必需,規定從何處添加或是刪除元素。,該參數是開始插入和(或)刪除的數組元素的下標,必須是數字。

    howmany,必需。規定應該刪除多少元素。必須是數字也可以是0,如果沒有規定此參數,則刪除從index 開始到原數組結尾的所有元素。

    element1,可選,規定有添加到數組的新元素,從index所指的下標處開始插入。

    elementX,可選,可向數組添加若干元素。

返回值:

如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。

注意:

       1、splice() 方法可以刪除從 index 處開始的0或多個元素,並且用參數列表聲明中聲明的一個或是多個值來代替或修改那些被刪除的元素。

       2、splice() 方法和 slice() 方法的作用是不同的,splice() 方法會直接對數組進行修改。


 

實例:

 刪除從 index 2  開始的三個元素,並添加一個新元素來替代被刪除的元素

var arr=["大雪","小雪","霜降","立冬","寒露"] arr.splice(2,3,"秋分"); console.log(arr);

 創建一個新的數組,並且向里面添加元素

var arr = new Array(5) arr[0] = "大雪" arr[1] = "小雪" arr[2] = "霜降" arr[3] = "立冬" arr[4] = "寒露" arr.splice(4,0,"白露"); console.log(arr);

 

 


免責聲明!

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



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