[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Object/entries [Back]  [Original]

Object : mthode statique entries() - JavaScript | MDN

Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.

View in English Always switch to English

Object : mthode statique entries()

Baseline Large disponibilit

Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis mars 2017.

La mthode statique Object.entries() retourne un tableau contenant les paires cl-valeur des proprits propres numrables d'un objet, dont les cls sont des chanes de caractres.

Dans cet article

Exemple interactif

const object = {
  a: "some string",
  b: 42,
};

for (const [key, value] of Object.entries(object)) {
  console.log(`${key}: ${value}`);
}

// Rsultat attendu :
// "a: some string"
// "b: 42"

Syntaxe

js
Object.entries(obj)

Paramtres

obj

Un objet.

Valeur de retour

Un tableau contenant les paires cl-valeur des proprits propres numrables de l'objet donn, dont les cls sont des chanes de caractres. Chaque paire cl-valeur est un tableau de deux lments : le premier lment est la cl (toujours une chane de caractres), le second est la valeur de la proprit.

Description

Object.entries() retourne un tableau dont les lments sont des tableaux correspondant aux paires cl-valeur des proprits propres numrables cls de chanes de caractres trouves directement sur l'objet. Cela quivaut itrer avec une boucle for...in, sauf qu'une boucle for...in numre aussi les proprits de la chane de prototypes. L'ordre du tableau retourn par Object.entries() est le mme que celui fourni par une boucle for...in.

Si vous n'avez besoin que des cls, utilisez Object.keys(). Si vous n'avez besoin que des valeurs, utilisez Object.values().

Exemples

Utilisation de Object.entries()

js
const obj = { foo: "bar", baz: 42 };
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]

const arrayLike = { 0: "a", 1: "b", 2: "c" };
console.log(Object.entries(arrayLike)); // [ ['0', 'a'], ['1', 'b'], ['2', 'c'] ]

const randomKeyOrder = { 100: "a", 2: "b", 7: "c" };
console.log(Object.entries(randomKeyOrder)); // [ ['2', 'b'], ['7', 'c'], ['100', 'a'] ]

// getFoo est une proprit non numrable
const myObj = Object.create(
  {},
  {
    getFoo: {
      value() {
        return this.foo;
      },
    },
  },
);
myObj.foo = "bar";
console.log(Object.entries(myObj)); // [ ['foo', 'bar'] ]

Utiliser Object.entries() sur des valeurs primitives

Les arguments qui ne sont pas des objets sont convertis en objets. undefined et null ne peuvent pas tre convertis en objets et lvent immdiatement une TypeError. Seules les chanes de caractres peuvent avoir des proprits propres numrables, tandis que toutes les autres primitives retournent un tableau vide.

js
// Strings have indices as enumerable own properties
console.log(Object.entries("foo")); // [ ['0', 'f'], ['1', 'o'], ['2', 'o'] ]

// Other primitives except undefined and null have no own properties
console.log(Object.entries(100)); // []

Convertir un objet en Map

Le constructeur Map() accepte un itrable de paires d'entres. Avec Object.entries, vous pouvez facilement convertir un Object en Map :

js
const obj = { foo: "bar", baz: 42 };
const map = new Map(Object.entries(obj));
console.log(map); // Map(2) {"foo" => "bar", "baz" => 42}

Itrer sur un objet

En utilisant la dcomposition de tableau, vous pouvez itrer facilement sur les objets.

js
// Avec une boucle for...of
const obj = { a: 5, b: 7, c: 9 };
for (const [key, value] of Object.entries(obj)) {
  console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
}

// Avec les mthodes de tableau
Object.entries(obj).forEach(([key, value]) => {
  console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
});

Spcifications

Spcification
ECMAScript 2027 LanguageSpecification
# sec-object.entries

Compatibilit des navigateurs

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page