Метод Array.of() створює новий екземпляр Array з заданої кількості аргументів, незважаючи на кількість або тип аргументів.

Різниця між Array.of() та конструктором Array полягає у поводженні з цілочисельними аргументами: Array.of(7) створює масив з єдиним елементом 7, в той час як Array(7) створює порожній масив з величиною властивості length, що дорівнює 7 (Зауважте: мається на увазі масив з 7 порожніми елементами, а не елементами, що дорівнюють undefined).

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

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

Синтаксис

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

Параметри

elementN
Елементи, з яких треба створити масив.

Значення, яке повертається

Новий екземпляр Array.

Опис

Ця функція є частиною стандарту ECMAScript 2015. Щоб дізнатися більше, дивіться проект Array.of та Array.from та поліфіл Array.of.

Приклади

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

Поліфіл

Виконання цього коду перед будь-яким іншим кодом створить метод Array.of(), якщо він не підтримується початково.

if (!Array.of) {
  Array.of = function() {
    return Array.prototype.slice.call(arguments);
  };
}

Специфікації

Специфікація Статус Коментар
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Array.of' in that specification.
Standard Початкове визначення.
ECMAScript Latest Draft (ECMA-262)
The definition of 'Array.of' in that specification.
Draft  

Сумісність з веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
ofChrome Full support 45Edge Full support 12Firefox Full support 25IE No support NoOpera Full support YesSafari Full support 9WebView Android Full support YesChrome Android Full support 39Edge Mobile Full support YesFirefox Android Full support 25Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 4.0nodejs Full support 4.0.0

Legend

Full support  
Full support
No support  
No support

Див. також

Мітки документа й учасники

Мітки: 
Зробили внесок у цю сторінку: DariaManko
Востаннє оновлена: DariaManko,