闭包

<script type="text/javascript">
        
//            for(var i=0;i<10;i++){
//                setTimeout(function(){
//                    console.log(i);
//                },1000);
//            }
//            i=10
            
//            var i=0;//10
//            for(;;){
//                if(i<10){
//                    console.log(i);
//                }else{
//                    break;
//                }
//                i++;//10
//            }

//            闭包  函数里面包含函数的情况下 就是闭包
//            闭包的特性  变量不会被销毁 会被保存下来 即使外层函数被销毁 内层函数引用了的外层函数作用域下的变量 那么这个变量会被保存下来
//            for(var i=0;i<10;i++){
//                (function(i){
//                    setTimeout(function(){
//                        console.log(i)
//                    },1000);
//                })(i);
//            }

//            var i=0;//1
//            function outer(){
//                i++;//1
//                console.log(i);
//                return function(){
//                    i+=2;//3
//                    console.log(i);
//                }
//            }
//            outer();//1
//            outer();//2
//            outer()();//1 3

//            函数内部的变量 和函数 是无法被函数外部调用
        </script>

posted @ 2016-10-21 22:40  yuejie  阅读(122)  评论(0编辑  收藏  举报