Array.of()

Метод 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);          // масив з 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);
    // Або
    let vals = []
    for(let prop in arguments){
        vals.push(arguments[prop])
    }
    return vals.slice()
}

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

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

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

BCD tables only load in the browser

Див. також