Web/JavaScript/Reference/Global objects/Array/of

From Get docs


The Array.of() method creates a new Array instance from a variable number of arguments, regardless of number or type of the arguments.

The difference between Array.of() and the Array constructor is in the handling of integer arguments: Array.of(7) creates an array with a single element, 7, whereas Array(7) creates an empty array with a length property of 7 (Note: this implies an array of 7 empty slots, not slots with actual undefined values).

Array.of(7);       // [7] 
Array.of(1, 2, 3); // [1, 2, 3]

Array(7);          // array of 7 empty slots
Array(1, 2, 3);    // [1, 2, 3]

Syntax

Array.of(element0[, element1[, ...[, elementN]]])

Parameters

elementN
Elements used to create the array.

Return value

A new Array instance.

Description

This function is part of the ECMAScript 2015 standard.

For more information, see:

Polyfill

Running the following code before any other code will create Array.of() if it's not natively available.

if (!Array.of) {
  Array.of = function() {
    return Array.prototype.slice.call(arguments);
    // Or 
    let vals = [];
    for(let prop in arguments){
        vals.push(arguments[prop]);
    }
    return vals;
  }
}

Examples

Using Array.of

Array.of(1);         // [1]
Array.of(1, 2, 3);   // [1, 2, 3]
Array.of(undefined); // [undefined]

Specifications

Specification
ECMAScript (ECMA-262)The definition of 'Array.of' in that specification.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile Server
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet Node.js
of Chrome

Full support 45

Edge

Full support 12

Firefox

Full support 25

IE

No support No

Opera

Full support 26

Safari

Full support 9

WebView Android

Full support 39

Chrome Android

Full support 39

Firefox Android

Full support 25

Opera Android

Full support 26

Safari iOS

Full support 9

Samsung Internet Android

Full support 4.0

nodejs

Full support 4.0.0

Legend

Full support  
Full support
No support  
No support


See also