(原创)JS闭包看代码理解

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>JS闭包</title>    
        <script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
        
        <script type="text/javascript">
            
            $(document).ready(function(){
                
                alert("JS闭包的作用开始了!!!");
                
                var a = aa();
                
                a();
                
                addNum();
                
                a();
                
                addNum();
                
                a();
            });
            
            
            function aa() {
                var n = 100;
                
                addNum = function() {
                            n++;
                        }
                
                function bb() {
                    alert(n)
                }
                return bb;        
            }
            
            function showNum() {
                var show = aa();
                show();
            }
            
            
            function noClosure() {
            
                alert("看下去就知道区别了!!!");
                
                showNumber();
                
                addNum();
                
                showNumber();
            }
            
            function showNumber() {
                var n = 999;
                
                addNum = function() {
                            n++;
                            alert(n)
                        }    
                alert(n);
            }
            
        </script>
    </head>
    <body>
    
        JS闭包(闭包就是能够读取其他函数内部变量的函数):
            <br />
        <input type="button" value="点我" onclick="showNum();" />
        
        <input type="button" value="无闭包" onclick="noClosure();" />

    </body>
</html>

 

用简单的代码教你理解JS闭包,js闭包简单说就是能够读取到函数内部变量值的函数,并且使这些变量始终保存在内存中

 

不要停留在羡慕别人代码的层次上,因为不试试,你怎么知道你也可以让别人羡慕的呢???

 

posted @ 2016-03-04 17:33  Answer.AI.L  阅读(342)  评论(0编辑  收藏  举报