闭包是js相当重要的特性,在此记录一下:
普通的用法:
function f1(){
n=999;
function f2(){
alert(n);
}
return f2;
}
var result=f1();
result(); // 999
还可以换一种写法,让js更符合我们的调用习惯:
var f1 = {
init:function(){
this.call();
},
call:function(){
alert('hello');
}
}
这样可以很容易实现链式调用,
si.init()的结果是alert(“hello”);