封闭函数 闭包

(function () {
        var str = '欢迎访问我的主页';
        alert(str);
    })();

    /* !function () {
        var str = '欢迎访问我的主页';
        alert(str);
    }()*/
     ~function () {
        var str = '欢迎访问我的主页';
        alert(str);
    }()

封闭函数用 ! 或者 ~ 还有()()

闭包

  function aa(b) {
        var a = 12;
        function bb() {
            alert(a);
            alert(b);
        }
        return bb;
    }
    var cc = aa(24);
   //封闭函数写闭包 
   /*var cc =(function (b) {
         var a = 12;
        function bb() {
            alert(a);
            alert(b);
        }
        return bb;
   })(24);*/
    cc()

  • 闭包就是函数里面有函数,也可以叫函数的嵌套

闭包的用途

1.存索引

 li{
        height: 30px;
        background-color: gold;
        margin-bottom: 10px;
    }
</style>
<script type="text/javascript">
    window.onload = function () {
        var ali = document.getElementsByTagName('li');

        for(var i=0; i<ali.length; i++){
            (function (i) {
                ali[i].onclick = function () {
                    alert(i)
                }
            })(i)
        }
    }

2.私有计数器

var count = (function () {
        var a = 0;
        function bb() {
            a++;
            return a;
        }
        return bb;
    })();
    alert(count());
    alert(count());
    var c = count();
    alert(c);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 封闭函数用 ! 或者 ~ 还有()() 闭包 闭包就是函数里面有函数,也可以叫函数的嵌套 闭包的用途 1.存索引 ...
    姓高名旭升阅读 100评论 0 0
  • 封闭函数用 ! 或者 ~ 还有()() 闭包 闭包就是函数里面有函数,也可以叫函数的嵌套 闭包的用途 存索引 私有计数器
    Stranger_I阅读 369评论 0 1
  • 封闭函数用 ! 或者 ~ 还有()() 闭包 闭包就是函数里面有函数,也可以叫函数的嵌套 闭包的用途 1.存索引 ...
    浮_屠阅读 153评论 0 0
  • 变量作用域 变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量。 1、全局变量:在...
    奋斗的老王阅读 761评论 0 49
  • JavaScript解析过程分为两个阶段,先是编译阶段,然后执行阶段,在编译阶段会将function定义的函数提前...
    啊烟雨阅读 356评论 0 0