21 votes

Comment accéder à la valeur d'un objet javascript sans en connaître la clé ?

Duplicata possible :
Comment énumérer les propriétés d'un objet javascript ?

Si j'ai un objet javascript comme ceci :

data = {
    a : 2,
    b : 3
}

mais a et b sont arbitraires et décidés au moment de l'exécution. Existe-t-il un moyen de parcourir l'objet et d'accéder à toutes les propriétés sans connaître la clé ?

32voto

Elliot Bonneville Points 18141
data = {
    a : 2,
    b : 3
}

for(var propName in data) {
    if(data.hasOwnProperty(propName)) {
        var propValue = data[propName];
        // do something with each element here
    }
}

3voto

phenomnomnominal Points 4795

Tout d'abord, ce n'est pas ce que l'on appelle communément en JS une Array il est normalement connu comme un Object . Array ne contiennent que des valeurs, c'est-à-dire

arr = [1, 2, 3, 4]

Considérant que Object s ('Associative arrays') associe des paires nom : valeur.

Pour itérer sur les valeurs d'un Object utiliser for...in

var object = { a: 'hello' }

for (var key in object) {
  if (object.hasOwnProperty(key)) {
    alert(key); // 'a'
    alert(object[key]); // 'hello'
  }
}   

Le site hasOwnProperty est important, pour s'assurer que vous ne regardez que l'objet réel, et non les propriétés qui appartiennent au prototype.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X