0

我想知道跟踪某些外部 javascript 对全局命名空间所做的更改的最佳方法是什么。例如,假设我有一个网站,我想知道哪些对象正在被访问者机器上运行的某些第三方软件添加到全局命名空间中。还有一种方法可以从这些更改中保留全局名称空间吗?

4

1 回答 1

0

ES5 有Object.freeze用于“保留”对象:

Object.freeze(window);
Object.freeze(Object);
Object.freeze(Object.prototype);

等等。

ES6 的代理 API 将允许您跟踪对象的更改,但规范仍在起草中。SpiderMonkey 有一个原型实现

于 2014-11-05T17:14:10.460 回答