从自增开始遇到的一个问题
一个计数器:
1 function add(){ 2 var a = 0; 3 alert(a++); 4 } 5 add();// 0 6 add();// 0 7 add();// 0
原本想的是每次调用就自增,但是每次调用后都是弹出0;
接下来用到闭包:
1 var add = a(); 2 3 function a(){ 4 var a = 0; 5 return function (){ 6 alert(a++); 7 } 8 } 9 10 add();// 0 11 add();// 1 12 add();// 2
经过这样处理后就可以,显然还可以利用匿名函数简化:
1 var add = (function (a){ 2 return function (){ 3 alert(a++); 4 } 5 })(0) 6 7 add();// 0 8 add();// 1 9 add();// 2
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号