JQuery快速转储对象的成员

Han*_*s Z 5 javascript jquery

我想知道是否有一种快速方法来获取对象变量的所有值,类似于php的var_dump()方法.

所以,如果我有一个对象

var myObject = {
    Up: 38,
    Dn: 40,
    Lf: 37,
    Rt: 39,
    Enter: 13,
    Space: 32,
    Esc: 27
};
Run Code Online (Sandbox Code Playgroud)

我会回来的字符串看起来像

[ Up:38, Dn:40, Lf:37, Rt:39, Enter:13, Space:32, Esc:27 ]
Run Code Online (Sandbox Code Playgroud)

假设我需要在不能使用firebug的计算机上执行此操作.有没有办法在不迭代对象中的所有参数的情况下执行此操作?有没有一个像这样的独立库?

HBP*_*HBP 6

作为我经常使用的快速衬垫

   var o = {a:1, b:2}, k, s = []; for (k in o) o.hasOwnProperty(k) && s.push (o[k]); s = s.join (', ');
Run Code Online (Sandbox Code Playgroud)

您只需要更改对象的一个​​出现(o的值),结果为s.

这不会递归到数据结构中.如果需要,JSON.stringify可能更适合.但请注意,JSON.stringify不执行功能,它只是跳过它们!

对于格式化字符串使用

JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, 4); // Indented 4 spaces
Run Code Online (Sandbox Code Playgroud)

根据Javascript的答案:如何直接从对象生成格式化的易于阅读的JSON?


Rya*_*yan 5

使用默认开发.IE,Chrome和Firefox上的工具

console.dir(myObject); 
Run Code Online (Sandbox Code Playgroud)

如果你真的不能使用这些工具,那么也许JSON.stringify(myObject)可以帮助.