zoukankan      html  css  js  c++  java
  • JavaScript中闭包

      听燕十八老师的《JavaScript高级》课程,对JavaScript中闭包的笔记记录!

    function t1(){
        var age=20;
        function t2(){
            console.log(age);
        }
        return t2;
    }
    var tem=t1();
    var age=99;
    tem();//20  
    

       在大部分语言中,t1被调用执行则申请内存,并把其局部变量push入栈。t1函数执行完毕,内部的局部变量随着函数的退出而销毁,因此age=20的局部变量已经消失了。但在js中,age=20这个变量却被t2捕捉,即使t1执行完毕,通过t2依然能访问该变量。这种情况---返回的函数,并非孤立的函数,甚至把其周围的变量环境一起打包,形成一个封闭的"环境包",共同返回,所以叫"闭包"!

      一句话概括:函数的作用域取决于声明时,而不取决于调用时!

  • 相关阅读:
    java前三章总结
    Java入门第二章
    java编程入门小结
    Java入门第二章
    java预习易错点
    计算机基础
    切换卡
    ajax
    水印4
    shuiyin3
  • 原文地址:https://www.cnblogs.com/iagw/p/6382769.html
Copyright © 2011-2022 走看看