Question

Comment puis-je lire un objet Javascript quand je ne sais pas ce qu'il ya dedans?

Je travaille sur Node.js et ont une variable pour laquelle je ne sais vraiment pas ce qui est en elle. Lorsque je tente sys.puts:

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

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

Était-ce utile?

La solution

La plupart des navigateurs Web peuvent utiliser le JSON objet d'imprimer le contenu d'un objet,

writeln(JSON.stringify(your_object));

Si cela ne fonctionne pas, vous pouvez créer votre propre stringifier;

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));

Autres conseils

Vous pouvez faire une boucle 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 console )

Si vous voulez limiter les résultats aux propriétés directes ( pas hérité par la chaîne prototype ) puis utilisez ainsi le hasOwnProperty méthode.

exemple

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

Vous pouvez parcourir votre objet de connaître ses propriétés et leurs valeurs

Supposons que votre objet est

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

Maintenant, vous pouvez lire les détails dans JS

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

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

console.log(a);

Si vous avez besoin juste pour vérifier ce qui est dans un objet (par exemple, il est pertinent de vous pour une raison quelconque, mais 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 qui est en elle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top