写一个闭包

  1. 什么是闭包(closure),为什么要用它?
    闭包指的是一个函数可以访问另一个函数作用域中变量。常见的构造方法,是在一个函数内部定义另外一个函数。内部函数可以引用外层的变量;外层变量不会被垃圾回收机制回收。
    注意,闭包的原理是作用域链,所以闭包访问的上级作用域中的变量是个对象,其值为其运算结束后的最后一个值。
    优点:避免全局变量污染。缺点:容易造成内存泄漏。
     
    function makeFunc() {
    var name = "Mozilla";
    function displayName() {
    console.log(name);
    }
    return displayName;
      }
    var myFunc = makeFunc();
    myFunc();

猜你喜欢

转载自www.cnblogs.com/zazahao/p/10877589.html