美文网首页
什么是闭包?这就是闭包

什么是闭包?这就是闭包

作者: 楠楠_c811 | 来源:发表于2018-08-11 21:58 被阅读53次

    闭包是JS中很重要的一部分,但是究竟什么是闭包,总是让刚开始学习的人感觉云里雾里,今天特地总结了一下,拿给大家看一下。
    首先来看一段代码吧:

    // 闭包
            function F1(){
                var a = 100;
                // 返回一个函数(函数作为返回值)
                return function(){
                    console.log(a)
                }
            }
            // f1 得到一个函数
            var f1 = F1();
            var a = 200;
            f1();//  a=100  一个函数的父级作用域是他定义时候的作用域,而不是执行时候的作用域
    

    什么是闭包呢?这就是闭包了。

    闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取[局部变量],所以闭包可以理解成“定义在一个[函数]内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。

    如果这样还是理解不了,那就把这段简单的代码多敲几遍。书读百遍其义自见嘛。

    相关文章

      网友评论

          本文标题:什么是闭包?这就是闭包

          本文链接:https://www.haomeiwen.com/subject/iykjbftx.html