【发布时间】:2009-12-18 00:10:09
【问题描述】:
var foo = (function() {
var proxy = {},
warning = false;
proxy.warn = function(msg) {
if (!warning) {
warning = true;
alert(msg);
}
return this; //For the purpose of method chaining we return proxy object.
}
function func() {
alert(warning); //This is a private function relative to foo.
}
return proxy;
}());
foo.warn(); //will alert
foo.warn(); //will not alert since warning has been set to true
我对这里的实例化感到困惑,因为没有使用 new 关键字谁持有警告值?就范围警告而言,这里是否有任何泄漏。
谢谢。
【问题讨论】:
标签: javascript scope instantiation anonymous-function