Array() 建構函式

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

Array() 建構函式用於建立 Array 物件。

語法

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

瀏覽器相容性

另見