Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Array : méthode statique of()
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2015.
La méthode statiqueArray.of() crée une nouvelle instance deArray à partir d'un nombre variable d'arguments, quel que soit le nombre ou le type des arguments.
Dans cet article
Exemple interactif
console.log(Array.of("foo", 2, "bar", true));// Résultat attendu : Array ["foo", 2, "bar", true]console.log(Array.of());// Résultat attendu : Array []Syntaxe
Array.of()Array.of(element1)Array.of(element1, element2)Array.of(element1, element2, /* …, */ elementN)Paramètres
element1, …,elementNÉléments utilisés pour créer le tableau.
Valeur de retour
Une nouvelle instance deArray.
Description
La différence entreArray.of() et le constructeurArray() réside dans la gestion d'un seul argument :Array.of(7) crée un tableau avec un seul élément,7, tandis queArray(7) crée un tableau vide avec une propriétélength de7. (Cela signifie un tableau de 7 cases vides, et non des cases contenant réellement la valeurundefined.)
Array.of(7); // [7]Array(7); // tableau de 7 cases videsArray.of(1, 2, 3); // [1, 2, 3]Array(1, 2, 3); // [1, 2, 3]La méthodeArray.of() est une méthode de fabrique générique. Par exemple, si une sous-classe deArray hérite de la méthodeof(), la méthode héritée retournera de nouvelles instances de la sous-classe au lieu d'instances deArray. En fait, la valeur dethis peut être n'importe quelle fonction constructeur qui accepte un seul argument représentant la longueur du nouveau tableau, et le constructeur sera appelé avec le nombre d'arguments passés àof(). La propriété finalelength sera à nouveau définie une fois que tous les éléments auront été assignés. Si la valeur dethis n'est pas une fonction constructeur, le constructeur natifArray est utilisé à la place.
Exemples
>UtiliserArray.of()
Array.of(1); // [1]Array.of(1, 2, 3); // [1, 2, 3]Array.of(undefined); // [undefined]Appelerof() sur des constructeurs qui ne sont pas des tableaux
La méthodeof() peut être appelée sur n'importe quelle fonction constructeur qui accepte un seul argument représentant la longueur du nouveau tableau.
function PasUnTableau(len) { console.log("PasUnTableau appelé avec la longueur", len);}console.log(Array.of.call(PasUnTableau, 1, 2, 3));// PasUnTableau appelé avec la longueur 3// PasUnTableau { '0': 1, '1': 2, '2': 3, length: 3 }console.log(Array.of.call(Object)); // [Number: 0] { length: 0 }Lorsque la valeur dethis n'est pas un constructeur, un objetArray standard est retourné.
console.log(Array.of.call({}, 1)); // [ 1 ]Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-array.of> |
Compatibilité des navigateurs
Voir aussi
- Guide des collections indexées
- L'objet global
Array - Le constructeur
Array() - La méthode
Array.from() - La méthode
TypedArray.of() - Prothèse d'émulation de
Array.ofdanscore-js(angl.) - Prothèse d'émulation es-shims de
Array.of(angl.)