13-JavaScript 封闭函数

封闭函数
封闭函数时js中匿名函数的另一种写法,创建一个一开始就执行而不用命名的函数

比如要再网页中添加一个功能,为了避免变量重名影响其它功能,可以使用封闭函数,封闭函数内定义的变量只有它自己可以使用。但是封闭函数中也可以修改全局变量,所以定义变量时要使用var,如果不加var,比如:iNu=123,如果全局中刚好有iNu这个变量,则会被覆盖,改成:var iNu=123就不会有问题。


一般定义函数和执行函数:

function myalert(){
    alert("hello");
};

myalert();

封闭函数:
(function(){
    alert("helo");
})();

 

<script>
        ;(function(){alert("hello")})();;//封闭函数句末这个分号一定要加,不然会报错,js不能识别这是一句代码的结尾,甚至可以再句首加一个,避免前一句代码末尾没有分号。多个分号不要紧。
        var iNum = 222;
        (function(){
            var iNum = 111 //要用var定义新变量,直接:iNum=111会修改全局变量
            function myalert(){
                alert(iNum)}

        myalert()
        })();;


        //封闭函数另一种写法,前面加感叹号

        !function(){
            alert("hello hello");
        }();

        //封闭函数另一种写法,前面加波浪号
        ~function(){
            alert("www");
        }();



    </script>

 

 

posted @ 2019-03-20 21:16  greenfan  阅读(156)  评论(0)    收藏  举报