javascript - Chrome 中的循环结构到 JSON

标签 javascript google-chrome google-chrome-extension

为什么以下代码会在 Chrome 控制台中导致“类型错误:将循环结构转换为 JSON”?

JSON.stringify(document.querySelectorAll("img"))

最佳答案

DOM 元素包含循环引用,并且您无法对包含循环引用或包含具有循环引用的对象的任何对象调用 JSON.stringify()

例如,它包含 .parentNode,然后又包含 .childNodes,然后它又指向同一个元素。一旦 JSON.stringify() 检测到此类循环引用,它就会停止,因为它无法记录所有属性。

基本上,您无法对 DOM 节点或 DOM 节点列表进行字符串化。也许如果您帮助我们了解您真正想要解决的问题,我们可以帮助您找到替代方法。例如,也许您只需将其保存到 img.src 属性即可保存这些图像。

关于javascript - Chrome 中的循环结构到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27222809/

相关文章:

google-chrome - 如何设置 cron 作业以使用 crontab 在浏览器中打开网页?

google-chrome-extension - 仅适用于 Chrome 扩展程序中特定域的后台脚本

javascript - 如何以编程方式从 Chrome 扩展内容脚本中选择 select2 中的选项?

javascript - Chrome 开发工具中使用了哪些框架和库?

javascript - 固定位置在 firefox 和 chrome、opera 中都不起作用,但仅在 safai、css 中起作用?

google-chrome-extension - 可以browser.tabs.query({active : true, currentWindow : true}) ever return more than one tab?

javascript - Canvas HTML5 和 jquery,删除内容

javascript - 具有不同超时时间的同步回调

javascript - 有什么方法可以覆盖参数的 getter/setter 性质吗?

javascript - Javascript 类问题