<分区>
我试图在控制台中显示窗口的所有元素。我尝试使用 console.log(window)
但它没有自动扩展。
本帖Is there a way to auto expand objects in Chrome Dev Tools?建议我使用 JSON.stringify
但我收到以下错误:
<分区>
我试图在控制台中显示窗口的所有元素。我尝试使用 console.log(window)
但它没有自动扩展。
本帖Is there a way to auto expand objects in Chrome Dev Tools?建议我使用 JSON.stringify
但我收到以下错误:
最佳答案
这是不太可能发生的事情,而且我认为您无法完全模仿您在控制台中看到的所有扩展内容 - 原因之一是 window< 的“循环结构”/em>。不过,它可以在某种程度上通过克隆窗口对象并进行一些调整来完成 - this可能是一个很好的起点。
var maxDepth = 10;
function cloneObject(obj,depth) {
if (!depth) depth = 1;
var clone = {};
for (var i in obj) {
if (typeof(obj[i])=="object" && obj[i] != null) {
try {
if (obj[i].wowImCloned) clone[i] = '[I\'ve seen you somewhere..]';
else if (depth >= maxDepth) clone[i] = '[I\'m not going deeper]'
else {
obj[i].wowImCloned = true;
clone[i] = cloneObject(obj[i],depth+1);
}
} catch(err) clone[i] = err.message;
}
else if (typeof(obj[i])=="function") clone[i] = obj[i].toString()
else clone[i] = obj[i];
}
return clone;
}
var clone = cloneObject(window)
//console.log(JSON.stringify(clone))
关于javascript - 在窗口中将循环结构转换为JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43952103/
相关文章:
javascript - console.log() 和 console.debug() 的区别?
javascript - HTML 选择的 onClick 事件
php - 如何通过 OAuth 登录以便 cron 作业可以运行
javascript - window.console.log 和 console.log 有什么区别
javascript - 在 Firefox 开发者工具中看到错误的 JavaScript 堆栈跟踪(就像在 Chrome 中一样)
javascript - React-输入字段在onChange后变成字符串
javascript - 有谁知道您实际上是如何更新 safari 内容拦截器的 blockerList.json 文件的?