闭包由函数和与其相关的引用环境的组合而成的。闭包允许函数访问其引用环境中的变量(又称自由变量)广义上来说,所有jshan'shu都可以称为闭包,因为js函数在创建时保存了当前的词法环境。闭包是指有权访问另一个函数作用域中的变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量。闭包的缺点就是常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。 闭包的应用 保存变量现场封装