La methode Array.of()
permet de créer une nouvelle instance d'objet Array
avec un nombre variable d'argument, quels que soient leur nombre ou leur type.
Syntaxe
Array.of(element0, element1, ..., elementN)
Paramètres
element0
,element1
, ...,elementN
- Les éléments avec lesquels on souhaite construire le nouveau tableau.
Valeur de retour
Une nouvelle instance de Array
.
Description
Cette fonction fait partie du standard ECMAScript 6. Pour plus d'informations, voir les pages sur la proposition pour Array.of
et Array.from
ainsi que la page sur le fragment d'émulation pour Array.of
.
La différence avec la méthode Array.of()
et le constructeur Array
se situe dans la façon de gérer les arguments entiers. Ainsi Array.of(7)
créera un tableau avec un seul élément (7) alors que Array(7)
créera un tableau contenant 7 éléments, chacun valant undefined
:
Array.of(7); // [7] Array.of(1, 2, 3); // [1, 2, 3] Array(7); // [ , , , , , , ] Array(1, 2, 3); // [1, 2, 3]
Exemples
Array.of(1); // [1] Array.of(1, 2, 3); // [1, 2, 3] Array.of(undefined); // [undefined]
Prothèse d'émulation (polyfill)
Exécuter ce code avant tout autre code permettra de créer la méthode Array.of()
si elle n'est pas prise en charge de façon native.
if (!Array.of) { Array.of = function() { return Array.prototype.slice.call(arguments); }; }
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'Array.of' dans cette spécification. |
Standard | Définition initiale. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'Array.of' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | 45 | 25 (25) | Pas de support | Pas de support | Pas de support |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | Pas de support | 39 | 25.0 (25) | Pas de support | Pas de support | Pas de support |