將數組轉換為字符串
JavaScript toString()方法將數組轉換為(逗號分隔的)數組值的字符串往扔。
例子:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();
join()方法還將所有數組元素連接成一個字符串贩猎。它的行為就像toString(),但另外你可以指定分隔符:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join(" * ");
pop()和push()
使用數組時萍膛,很容易刪除元素和添加新元素吭服。這就是pop()方法和push()方法。
pop()方法從數組中刪除最后一個元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop(); // 從 fruits刪除最后一個元素 ("Mango")
pop()方法返回“彈出”的值:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.pop(); // x的值是 "Mango"
push()方法向數組最后添加一個新元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi"); // 添加一個新的元素 ("Kiwi") 到 fruits 最后
push()方法返回新的數組長度:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.push("Kiwi"); // x 的值是 5
shift()和unshift()
shift()方法刪除第一個數組元素并將所有其他元素“移位”到較低的索引蝗罗。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift(); // 刪除第一個元素 "Banana"
shift()方法返回“向外移出”的字符串:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.shift(); // x 的值是 "Banana"
unshift()方法向數組開頭添加一個新元素艇棕,并把舊元素向高的索引移動:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon"); // 添加一個新的元素 "Lemon" 到 fruits
unshift()方法返回新的數組長度。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon"); // 返回 5
改變元素
使用索引號訪問數組元素:
數組索引以0開頭串塑。[0]是第一個數組元素沼琉,[1]是第二個,[2]是第三個...
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[0] = "Kiwi"; // 將fruits的第一個元素改為 "Kiwi"
length屬性提供了一種將新元素附加到數組的簡單方法:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[fruits.length] = "Kiwi"; // 追加 "Kiwi" 到 fruits
刪除元素
由于JavaScript數組是對象拟赊,因此可以使用JavaScript運算符delete刪除元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
delete fruits[0]; // 將fruits中的第一個元素更改為undefined
使用delete可能會在數組中留下undefined的孔刺桃。請改用pop()或shift()。
拼接數組
splice()方法可用于向數組添加新項:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 0, "Lemon", "Kiwi");
第一個參數(2)定義了位置吸祟,其中新的元件應被加入的位置(在接合)瑟慈。第二個參數(0)定義應刪除多少元素 。其余參數(“Lemon”屋匕,“Kiwi”)定義要添加的新元素 葛碧。splice()方法返回一個包含已刪除項的數組:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 2, "Lemon", "Kiwi");
使用splice()刪除元素
通過巧妙的參數設置,您可以使用splice()刪除元素而不在數組中留下“洞”:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(0, 1); // 刪除fruits的第一個元素
第一個參數(0)定義應添加新元素的位置过吻。第二個參數(1)定義應刪除多少元素 进泼。其余參數被省略蔗衡。不會添加任何新元素。
合并數組
通過concat()方法合并現有數組來創(chuàng)建新數組:
var myGirls = ["Cecilie", "Lone"];
var myBoys = ["Emil", "Tobias", "Linus"];
var myChildren = myGirls.concat(myBoys); // 合并 myGirls 和 myBoys 兩個數組
concat()方法不會更改現有數組乳绕。它總是返回一個新數組绞惦。
concat()方法可以使用任意數量的數組參數
var arr1 = ["Cecilie", "Lone"];
var arr2 = ["Emil", "Tobias", "Linus"];
var arr3 = ["Robin", "Morgan"];
var myChildren = arr1.concat(arr2, arr3); // 合并 arr1 和 arr2 和 arr3 三個數組
concat()方法還可以將值作為參數:
var arr1 = ["Cecilie", "Lone"];
var myChildren = arr1.concat(["Emil", "Tobias", "Linus"]);
數組切片
slice()方法將一個數組切成一個新數組。此示例從數組元素1(“Orange”)開始切出數組的一部分:
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1);
slice()方法創(chuàng)建一個新數組洋措。它不會從源數組中刪除任何元素济蝉。
此示例從數組元素3(“Apple”)開始切出數組的一部分:
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(3);
slice()方法可以采用兩個參數slice(start,end)。方法從start參數中選擇元素菠发,直到(但不包括)end參數王滤。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1, 3);
如果省略end參數,就像在第一個示例中那樣滓鸠,slice()方法將切掉數組的其余部分雁乡。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(2);
自動toString()
當需要原始值時,JavaScript會自動將數組轉換為逗號分隔的字符串糜俗。嘗試輸出數組時總是如此踱稍。這兩個例子將產生相同的結果:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;
所有JavaScript對象都有一個toString()方法。