JS闭包经典DEMO

代码
 
function foo() {
var a = 10;
function bar() {
a
*= 2;
return a;
}
return bar;
}

var baz = foo(); // baz is now a reference to function bar.
baz(); // returns 20.
baz(); // returns 40.
baz(); // returns 80.
var blat = foo(); // blat is another reference to bar.
blat(); // returns 20, because a new copy of a is being used.

 

posted @ 2010-06-12 15:38  chunchill  阅读(228)  评论(0)    收藏  举报