2 votes

Lecture d'un objet Javascript

Comment lire un objet Javascript quand je ne sais pas ce qu'il contient ?

J'ai travaillé sur node.js et j'ai une variable dont je ne sais pas vraiment ce qu'elle contient. Lorsque j'essaie sys.puts :

sys.puts(headers) // returns [object Object]

S'il y avait quelque chose comme un print_r en javascript, cela aurait été parfait.

4voto

Gaby aka G. Petrioli Points 85891

Vous pouvez boucler sur ses propriétés avec

for (var item in headers)
{
  // item is the name of the property
  // headers[item] is the value
}

exemple à http://www.jsfiddle.net/gaby/CVJry/3/ ( nécessite une console )

Si vous voulez limiter les résultats aux propriétés directes ( non hérité par la chaîne des prototypes ), utilisez également l'option hasOwnProperty méthode.

exemple à http://www.jsfiddle.net/gaby/CVJry/2/

2voto

Björn Points 15485

La plupart des navigateurs web peuvent utiliser l'objet JSON pour imprimer le contenu d'un objet,

writeln(JSON.stringify(your_object));

Si cela échoue, vous pouvez créer votre propre stringificateur ;

var stringify = function(current) {
    if (typeof current != 'object')
        return current;

    var contents = '{';
    for (property in current) {
        contents += property + ": " + stringify(current[property]) + ", ";
    }

    return contents.substring(0, contents.length - 2) + "}";
}

var my_object = {my_string: 'One', another_object: {extra: 'Two'}};
writeln(stringify(my_object));

1voto

Chinmayee G Points 4434

Vous pouvez boucler votre objet pour connaître ses propriétés et leurs valeurs.

Supposons que votre objet soit

var emp = {
           name:'abc', 
           age:12, 
           designation:'A'
        }

Vous pouvez maintenant lire ses détails en JS

for(property in emp ){
 alert(emp[property] + " " +property);
}

Si vous avez ajouté firebug dans votre navigateur Firefox, ouvrez-le et écrivez soit dans la fenêtre JS ou JS dans la console Firebug.

console.log(a);

0voto

mingos Points 11608

Si vous n'en avez besoin que pour vérifier ce que contient un objet (c'est-à-dire que cela vous concerne pour une raison quelconque, mais que vous n'avez pas besoin de cette fonctionnalité dans votre script), vous pouvez simplement utiliser Firebug pour obtenir l'objet et vérifier exactement ce qu'il contient.

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