JavaScript 數組的操作方法

1.concat( )方法:基於當前數組中的所有項創建一個新數組。具體來說,該方法先回創建當前

數組的一個副本,然後將接收到的參數添加到這個數組的末尾,最後返回新構建的數組。


具體來說,可分爲以下三種情況:


(1)當沒有向concat( )傳遞參數時,它會複製當前數組並返回當前數組的一個副本;如例1所示:

例1:

var str=[1,3,2,'red','green'];

var arr0=str.concat()
alert(arr0); //返回值仍是原來的數組:1,3,2,red,green


(2)當傳遞的參數是一個或多個數組時,它會將數組的每一項添加到結果數組中;如例2所示:

例2:

var str=[1,3,2,'red','green'];

var arr2=str.concat('111',['11','22','33']);

alert(arr2); //返回結果爲:1,3,2,red,green,111,11,22,33


(3)當傳遞的值不是數組,這些值就會被添加到數組的末尾。如例3所示:

例3:

var str=[1,3,2,'red','green'];

var arr1=str.concat("123");

alert(arr1); //返回結果爲:1,3,2,red,green,123



2.slice( )方法:基於當前數中的一個或多個項創建新數組(副本)。

slice( )方法可以接受一個或兩個參數,即要返回項的起始和結束位置。


分爲兩種具體情況:


(1)當只有一個參數時,slice( )方法返回從該參數指定位置開始到當前數組末尾的所有項。

如例4所示:

例4:

var str=[1,2,3,4,5,6,7];
var arr=str.slice(1);
var arr1=str.slice(3);
alert(arr); //返回值爲:2,3,4,5,6,7
alert(arr1); //返回值爲:4,5,6,7


(2)當接收兩個參數時:返回起始和結束位置之間的項,但不包括結束位置的項

如例5所示:

例5:

var str=[1,2,3,4,5,6,7];
var arr=str.slice(1,3);
var arr1=str.slice(3,4);
alert(arr);//返回值爲:2,3
alert(arr1);//返回值爲:4



3.splice( )方法:主要有以下三種用法:


(1)刪除:可以刪除任意數量的項,只需要指定2個參數:要刪除的第一項的

位置和藥刪除的項數。用法如例6所示:

例6:

var str=[1,2,3,4,5,6,7];
var arr=str.splice(2,3);
alert(arr); //返回值是:3,4,5
alert(str); //返回值是:1,2,6,7


(2)插入:可以向指定位置插入任意數量的項,只需要提供3個參數:起始位置、

0(要刪除的項數)、要插入的項。如果要插入多個項,可以再傳入第4,第5

以至任意多個項。如例7所示:

例7:

var str=[1,2,3,4,5,6,7];
var arr=str.splice(2,0,"color","green");
alert(arr); //返回的是空數組
alert(str); //返回值:1,2,color,green,3,4,5,6,7


(3)替換:可以向指定位置插入任意數量的項,且同時刪除任意數量的項。只需指

定3個參數:起始位置要刪除的項數要插入的任意數量的項。插入的項數不必

與刪除的項數相等。如例8所示:

例8:

var str=[1,2,3,4,5,6,7];
var arr=str.splice(2,1,"color","green");
alert(arr); //返回值爲:3
alert(str); //返回值:1,2,color,green,4,5,6,7


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章