闭包是函数和声明该函数的词法环境的组合

转载自MDN 闭包:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures

1.词法作用域中使用的域,是变量在代码中声明的位置所决定的。嵌套的函数可以访问在其外部声明的变量。

function init() {
    var name = "Mozilla"; // name is a local variable created by init
    function displayName() { // displayName() is the inner function, a closure
        alert (name); // displayName() uses variable declared in the parent function    
    }
    displayName();    
}
init();

继续阅读闭包是函数和声明该函数的词法环境的组合