## 你说一下闭包是什么 #### 在红宝书里面是这样描述闭包的,闭包是有权访问另一个函数作用域中的变量的函数。 #### 在js中变量的作用域属于函数作用域,在函数执行完之后,作用域就不复存在,

你说一下闭包是什么

在红宝书里面是这样描述闭包的,闭包是有权访问另一个函数作用域中的变量的函数。
在js中变量的作用域属于函数作用域,在函数执行完之后,作用域就不复存在,内存也会随之被回收,但是由于闭包函数是建立在函数内部的子函数,它是可以访问上级作用域中的变量的,它们之间存在引用关系。所以即使上级函数执行完,作用域也不会随时销毁,这时子函数就形成了闭包,能够访问上级作用域中变量的权限,即使上级函数执行完后作用域内的值也不会被销毁。

你可能感兴趣的:(笔记,javascript,前端,java)