javascript 学习笔记

var C = (function() {

     var count = 0;

     return function() {

              return (count++);

   }

}());

var c1 = new C(); //0--count的值

var c2 = new C(); //1

var c3 = new C(); //2

var D= function() {

     var count = 0;

     return count++;

};

var d1 = new D(); //0 --count的值

var d2 = new D(); //0

var d3 = new D(); //0

这个问题是闭包closure原因造成的,但是不解的就是为什么每次new  实例;count的值能保留到下个实例创建呢?

posted on 2012-02-29 16:35  马尾  阅读(126)  评论(0)    收藏  举报

导航