語法
js
new Array()
new Array(element1)
new Array(element1, element2)
new Array(element1, element2, /* …, */ elementN)
new Array(arrayLength)
Array()
Array(element1)
Array(element1, element2)
Array(element1, element2, /* …, */ elementN)
Array(arrayLength)
注意: Array() 既可以單獨呼叫,也可以使用 new 關鍵字呼叫。兩者都會建立一個新的 Array 例項。
引數
element1, …,elementN-
JavaScript 陣列會使用提供的元素進行初始化,除非向
Array建構函式傳遞了單個引數,並且該引數是一個數字(參見下方的arrayLength引數)。請注意,這種情況僅適用於使用Array建構函式建立的 JavaScript 陣列,而不適用於使用方括號語法建立的陣列字面量。 arrayLength-
如果傳遞給
Array建構函式的唯一引數是一個介於 0 和 232 - 1(包含)之間的整數,則返回一個新的 JavaScript 陣列,其length屬性設定為該數字。注意: 這意味著該陣列包含
arrayLength個空槽,而不是實際包含undefined值的槽 — 請參閱 稀疏陣列。
異常
RangeError-
如果只有一個引數(
arrayLength)且該引數是數字,但其值不是整數,或者不在 0 和 232 - 1(包含)之間,則會丟擲錯誤。
示例
陣列字面量表示法
可以使用 字面量 表示法建立陣列。
js
const fruits = ["Apple", "Banana"];
console.log(fruits.length); // 2
console.log(fruits[0]); // "Apple"
帶單個引數的 Array 建構函式
可以使用帶單個數字引數的建構函式建立陣列。陣列建立後,其 length 屬性將設定為該數字,陣列元素為空槽。
js
const arrayEmpty = new Array(2);
console.log(arrayEmpty.length); // 2
console.log(arrayEmpty[0]); // undefined; actually, it is an empty slot
console.log(0 in arrayEmpty); // false
console.log(1 in arrayEmpty); // false
js
const arrayOfOne = new Array("2"); // Not the number 2 but the string "2"
console.log(arrayOfOne.length); // 1
console.log(arrayOfOne[0]); // "2"
帶多個引數的 Array 建構函式
如果向建構函式傳遞了多個引數,則會建立一個包含這些給定元素的新 Array。
js
const fruits = new Array("Apple", "Banana");
console.log(fruits.length); // 2
console.log(fruits[0]); // "Apple"
規範
| 規範 |
|---|
| ECMAScript® 2026 語言規範 # sec-array-constructor |
瀏覽器相容性
載入中…