Array() constructor
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
TheArray() constructor createsArray objects.
In this article
Syntax
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)Note:Array() can be called with or withoutnew. Both create a newArray instance.
Parameters
element1, …,elementNA JavaScript array is initialized with the given elements, except in the case wherea single argument is passed to the
Arrayconstructor and that argument isa number (see thearrayLengthparameter below). Note that this special case onlyapplies to JavaScript arrays created with theArrayconstructor, notarray literals created with the square bracket syntax.arrayLengthIf the only argument passed to the
Arrayconstructor is an integerbetween 0 and 232 - 1 (inclusive), this returns a new JavaScript array withitslengthproperty set to that number.Note:This implies an array of
arrayLengthempty slots, not slots with actualundefinedvalues — seesparse arrays).
Exceptions
RangeErrorThrown if there's only one argument (
arrayLength) that is a number, but its value is not an integer or not between 0 and 232 - 1 (inclusive).
Examples
>Array literal notation
Arrays can be created using theliteralnotation:
const fruits = ["Apple", "Banana"];console.log(fruits.length); // 2console.log(fruits[0]); // "Apple"Array constructor with a single parameter
Arrays can be created using a constructor with a single number parameter. An array is created withitslength property set to that number, and the array elements are emptyslots.
const arrayEmpty = new Array(2);console.log(arrayEmpty.length); // 2console.log(arrayEmpty[0]); // undefined; actually, it is an empty slotconsole.log(0 in arrayEmpty); // falseconsole.log(1 in arrayEmpty); // falseconst arrayOfOne = new Array("2"); // Not the number 2 but the string "2"console.log(arrayOfOne.length); // 1console.log(arrayOfOne[0]); // "2"Array constructor with multiple parameters
If more than one argument is passed to the constructor, a newArray withthe given elements is created.
const fruits = new Array("Apple", "Banana");console.log(fruits.length); // 2console.log(fruits[0]); // "Apple"Specifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-array-constructor> |
Browser compatibility
See also
- Indexed collections guide
Array