是否有第三方加载项/应用程序或某种方式在脚本调试器中为JavaScript对象执行对象映射转储?
这是情况......我有一个方法被调用两次,并且每次都有不同的东西.我不确定有什么不同,但事情是.所以,如果我可以将窗口的所有属性(或者至少是window.document)转储到文本编辑器中,我可以用简单的文件差异来比较两个调用之间的状态.思考?
Tim*_*Tim 129
console.log("my object: %o", myObj)
Run Code Online (Sandbox Code Playgroud)
否则你最终会得到一个字符串表示,有时会显示:
[object Object]
Run Code Online (Sandbox Code Playgroud)
或者其他一些.
Dar*_*rov 61
萤火虫 +console.log(myObjectInstance)
zho*_*shu 45
function mydump(arr,level) {
var dumped_text = "";
if(!level) level = 0;
var level_padding = "";
for(var j=0;j<level+1;j++) level_padding += " ";
if(typeof(arr) == 'object') {
for(var item in arr) {
var value = arr[item];
if(typeof(value) == 'object') {
dumped_text += level_padding + "'" + item + "' ...\n";
dumped_text += mydump(value,level+1);
} else {
dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
}
}
} else {
dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
}
return dumped_text;
}
Run Code Online (Sandbox Code Playgroud)
Chr*_* HG 41
如果您使用的是Chrome,Firefox或IE10 +,为什么不扩展控制台并使用
(function() {
console.dump = function(object) {
if (window.JSON && window.JSON.stringify)
console.log(JSON.stringify(object));
else
console.log(object);
};
})();
Run Code Online (Sandbox Code Playgroud)
一个简洁的跨浏览器解决方案.
mon*_*oid 24
只需使用:
console.dir(object);
Run Code Online (Sandbox Code Playgroud)
你会得到一个很好的可点击对象表示.适用于Chrome和Firefox
kaz*_*vac 12
适用于Chrome/Chromium
console.log(myObj)
Run Code Online (Sandbox Code Playgroud)
或者相当于
console.debug(myObj)
Run Code Online (Sandbox Code Playgroud)
为了提高可读性,可以将对象转换为json字符串,如下所示:
console.log(obj, JSON.stringify(obj));
Run Code Online (Sandbox Code Playgroud)
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
Usingconsole.log(object)
会将您的对象扔到 Javascript 控制台,但这并不总是您想要的。使用JSON.stringify(object)
将返回要存储在变量中的大部分内容,例如将其发送到 textarea 输入并将内容提交回服务器。
归档时间: |
|
查看次数: |
134896 次 |
最近记录: |