假设我们做这样的事情(如JavaScript对象的建设的一部分):如何检查JavaScript中的绑定闭包变量?
var foo = 3;
this.method = function() { alert(foo); };
现在关闭将产生以确保foo
被保留,可用于method
。有没有一种方法可以对当前的封闭进行反思?
我在找的是一种枚举method
内可用的所有变量的方法,其中应包括foo
。像这样调试代码将大大有助于调试闭包的绑定,但我还没有找到它。是否有可能做到这一点?
如果`foo`是一个局部变量(也许OP的例子全部在构造函数内),那么它将无法从全局对象中获得。 – dpercy 2016-02-20 00:12:23