javascript - 如何使用 javascript 获取所有对象浏览器(window.*)信息
问题描述
我需要一种方法来比较 javascript 中可用的所有对象信息。我尝试使用 copy(window); 复制 window.navigator 或仅复制窗口;在 chrome 控制台中。但是由于某种原因,当我想复制对象或将其转换为 json 时,我总是会出错。我一直在寻找它,但我真的找不到方法。我需要的是一个函数,它可以给我一个全局可用的所有 javascript 变量的列表,就像这个站点一样browserspy.dk/showprop.php. 该站点列出了所有全局变量和函数,我想要相同但最好是 JSON 格式或任何其他原始文本格式,以便我轻松比较它并找到差异。我想了解有关如何跟踪浏览器等的更多信息。我知道画布指纹和那些 javascript 变量。
我已经尝试过的是JSON.stringify(window);
,但这给了我一个
Uncaught TypeError: Converting circular structure to JSON
at JSON.stringify (<anonymous>)
at <anonymous>:1:6
我尝试查找此错误并遇到Chrome sendrequest 错误:TypeError: Converting circular structure to JSON但尝试解决方案时仍然遇到其他错误。只要我能够比较所有不同的变量,我不介意对象是否丢失了一些数据。我已经尝试了很多我已经在网上找到的方法,但我一直遇到的问题是:它会引发错误,或者对象中的所有对象都被忽略。我还需要所有信息,例如 window.navigator 或 window.navigator.webkitGetUserMedia 及其子值,如 window.navigator.webkitGetUserMedia.length 。如何实现?
解决方案
看到这个答案,为我工作:JSON.stringify, Avoid TypeError: Converting circular structure to JSON。
将该答案中的函数粘贴到浏览器中,然后执行JSON.stringifyOnce(window)
推荐阅读
- javascript - 如何在javascript中合并嵌套对象
- node.js - 循环中断或根据用户输入继续
- python - 如何在 python 中附加到 xml 文件时保留注释?
- sql - PostgreSQL 中带有日期的 generate_series() 中“yyyy”错误的无效值“(202”)
- vba - 如何引用触发 ItemAdd 的项目?
- angular - 无法使用模板变量调用函数
- css - 如何使用 Arial Regular 字体?比如什么是常规的?它是字体粗细吗?
- java - 如何通过 Wifi P2P 将多个客户端连接到一台主机
- mysql - MySQL查询作为加载基准真的很慢
- c# - WPF: Conditionally put focus on checkbox and button