闭包中可以包含块级作用域,因为闭包的范围是函数声明时的词法环境。这个词法环境包含了函数内部的所有变量和函数声明时所处的作用域。所以如果函数内部有块级作用域的变量被捕获到闭包中,闭包也会包含这个块级作用域。而闭包中可能会包含函数中未使用的变量,则是因为这些变量虽然未被使用,但它们仍然被存储在内存中,闭包会将函数声明时的整个词法环境都保存下来,因此包括未使用的变量在内。
上一篇:闭包中能否通过引用捕获一些变量,通过值捕获另一些变量?
下一篇:闭包中为什么顺序很重要?