跳到主要内容
CNode

为什么每次有人问 闭包,每个人都说的不一样?有大神一句话点透。

问答
Yyouarenode发布于 11 年前最后回复 11 年前
755500

闭包,通俗来说不就是 内部 与全局的 双向通道吗?

求大神 神点。。。

查看回复

回复 (7)

H
hbkdsm#711 年前

函数以及定义函数时所处执行上下文的词法环境组成的实体,称为闭包。

H
hoozi#611 年前

单向的 只有向上访问 没有向下访问

H
hwoarangzk#511 年前

函数体内部能直接访问函数体外部的东西,反过来则不行

J
jason1213#411 年前
  1. 一个函数(A)包含一个匿名函数(B),并把返回给外部使用
  2. 被返回的匿名函数(B)在被设置为null之前,这个匿名函数(B)可以访问包含它的那个函数(A)的下所有变量,定义的函数等

想理解闭包需要先理解几个内容

  1. 匿名函数
  2. 函数作用域
  3. 原型链

去看一下第五版的JavaScript高级程序设计,有讲闭包,我看了七遍才看懂, 还有高性能JavaScript,这个也值得多看几遍,更深入一些

2
20082496#311 年前

涉及到闭包的地方,可以用async的api解决,async.map()什么的

L
leapon#211 年前

闭包 就是把环境打包背着,用的时候把包打开查一查。 再 node-inspector 里,看看Scope会有帮助。

J
jinceon#111 年前

我也不知道该怎样表述闭包

Closures are functions that refer to independent (free) variables. In other words, the function defined in the closure 'remembers' the environment in which it was created.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures

参与回复

登录后即可参与回复。登录