作者:LAMP小白 点击:2065 发布日期:2013-01-03 18:41:00 返回列表
返回函数创建了一个闭包,可以使用这个闭包存储一些私有数据,这些数据仅可以被返回函数访问,外部代码无法访问
mio_lt;scriptmio_gt; var haha = function() { console.log('init'); this.name = 'inited!'; this.num = 0; return function() { this.num += 100; console.log(this.num); } } var a = haha(); //init a(); //100 a(); //200 mio_lt;/scriptmio_gt;
但是这个函数有一个缺点,当重新赋值为一个新变量时,原始函数里的的属性都会丢失
var a = haha();//init a();//100 var b = haha();//init a();//100
上一篇:函数的几种声明方式 下一篇:快递查询API