码迷,mamicode.com
首页 > Web开发 > 详细

js 闭包

时间:2014-09-03 16:15:56      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:io   使用   ar   cti   on   c   new   ef   js   

// 闭包,就是在 函数内部定义另外的函数,可以通过对象调用这些函数,而这些函数可以引用
//外层函数体中的临时变量,如name ,就可以间接的保持这些临时变量,而且只能通过这些函数
//才能使用,及时临时变量已经消失,但是这些函数却还是能够引用到。

// 闭包会造成垃圾回收难题,且性能不佳,以弃用。 改用 原型。
function Person(name){
var _firstname=name;//私有变量
this.name=name;//公共变量
this.sayHello=function(){
alert(this.name);
}
}

var billgates=new Person("billgates");
alert(billgates.name);//billgates ,可以访问
alert(billgates._firstname+"名字");// undefined ,私有变量不可以访问
billgates.sayHello();//即使参数name 已经消亡,也可通过引用person 的name 来获得,
// 间接把临时变量给保留了下来,随billgates消亡而消亡

js 闭包

标签:io   使用   ar   cti   on   c   new   ef   js   

原文地址:http://www.cnblogs.com/zhangchenglzhao/p/3953645.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!