--- title: Array.of() slug: Web/JavaScript/Reference/Global_Objects/Array/of tags: - Array - ECMAScript6 - Experimental - JavaScript - Method - Reference - polyfill translation_of: Web/JavaScript/Reference/Global_Objects/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
Новый массив {{jsxref("Array")}}.
Эта функция является частью стандарта ECMAScript 6. Для дополнительной информации смотрите предложение по 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); // Or let vals = [] for(let prop in arguments){ vals.push(arguments[prop]) } return vals.slice() }
Спецификация | Статус | Комментарии |
---|---|---|
{{SpecName('ES6', '#sec-array.of', 'Array.of')}} | {{Spec2('ES6')}} | Изначальное определение. |
{{SpecName('ESDraft', '#sec-array.of', 'Array.of')}} | {{Spec2('ESDraft')}} |