如何在Javascript中跟踪/保留全局命名空间
How to track/preserve global namespace in Javascript
我想知道什么是跟踪某些外部java脚本对全局命名空间所做更改的最佳方法。例如,假设我有一个网站,我想知道在访问者的机器上运行的一些第三方软件正在将哪个对象添加到全局命名空间中。还有没有一种方法可以保护全局命名空间不受这些更改的影响?
ES5有Object.freeze用于"保留"对象:
Object.freeze(window);
Object.freeze(Object);
Object.freeze(Object.prototype);
等等。
ES6的代理API将允许您跟踪对象的更改,但规范仍在起草中。SpiderMonkey有一个原型实现。
相关文章:
- 分派点击事件并保留击键修饰符
- 全局变量和全局对象的属性之间有什么区别吗
- 正在全局范围中查找JavaScript函数
- delete关键字在全局变量上的不同行为
- 在javascript函数中设置全局变量
- 如何将getJson的响应保存在全局变量中
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 提交后保留下拉选择的值
- 全局对象是属于哪个类的对象
- Javascript全局onclick监听器
- 从Javascript方法返回全局变量
- 保留 JQuery Vars 用于另一个函数(全局变量?)
- GAS:在处理程序函数中使用变量时,如何更改全局变量值并保留其更改后的值
- 从数组中删除元素,然后保留其状态以备将来使用,而不使用全局变量
- 像cookie这样的全局变量,它在回发后保留值,但应该为不同的实例保存不同的值(选项卡/窗口)
- JavaScript 作用域:在函数后保留全局变量值
- JavaScript 全局不保留范围?创建自动完成 Web 服务 JSON 对象
- 如何在 JavaScript 中覆盖全局函数,但保留对原始函数的引用
- 如何在Javascript中跟踪/保留全局命名空间
- 从JSON文件中获得的值保留在解析函数上;t被分配给全局变量