我一直在尝试理解Samy的每一个code代码,而他至少做了一件我根本不理解的事情。相关代码可以在http://code.google.com/p/beef/source/browse/trunk/modules/beefjs/lib/evercookie.js?spec=svn604&r=604上在线看到。
我的问题是这段代码如何设置evercookie本身。相关结构:
var evercookie = (function () {
this._class = function() {
...
};
return _class;
})();我知道evercookie是一个构造函数(尽管没有遵循大写构造函数的惯例),而且我知道evercookie被设置为返回一个匿名的、自动执行的函数。除非我比我想的更困惑,否则evercookie应该设置为_class在外部(匿名)函数范围内的值。I不的意思是:_class从哪里得到值?_class与this._class不一样,也没有其他对_class的引用。
发布于 2011-06-07 18:10:32
在该函数中,_class与this._class相同,因为this在自动执行的函数中引用窗口对象。它本质上使_class函数成为一个全局变量。
以下是基本想法:http://jsfiddle.net/hYQab/
https://stackoverflow.com/questions/6269470
复制相似问题