在Chrome JS调试器中,如何打印对象的所有属性?

Jef*_*ang 4 javascript debugging google-chrome

我在Chrome中打开了Javascript调试器(Ctrl + Shift + L)并开始使用它在我的代码中设置断点.

与Firebug相比,这是一个非常不同的界面(它是所有命令行驱动的)所以我想知道如何做一个简单的事情,比如打印一个对象的所有属性.

如果我有这样的对象:

var opts = {
  prop1: "<some><string/></some>",
  prop2: 2,
  prop3: [1,2,3]
}
Run Code Online (Sandbox Code Playgroud)

我可以设置一个断点并检查对象,但我似乎只得到一个属性,我不确定会出现哪个属性:

$ print opts
#<an Object>
Run Code Online (Sandbox Code Playgroud)

试图获得所有属性:

$ print for(var p in opts) p;
prop1
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?它显然不仅仅有一个......

Jav*_*ier 6

Chrome具有ECMA风格的原生JSON,因此您可以使用

JSON.stringify (opts);
{"prop1":"<some><string/></some>","prop2":2,"prop3":[1,2,3]}
Run Code Online (Sandbox Code Playgroud)