【发布时间】:2011-06-28 21:28:33
【问题描述】:
这就是我面临的问题
函数 AAA(){ this.f1 = 函数(){ /*期望 f2 将被调用,因为两者都是同一个对象。*/ 控制台.log(f2(5));// } this.f2 = 函数(x){ 返回 x; } } x = 新 AAA(); x.f1(); //ReferenceError: f2 未定义也不行,
函数 AAA(){ this.f1 = 函数(){ /*期望 f2 将被调用,因为两者都是同一个对象。*/ 控制台.log(f3(5));// } /*命名函数f3希望得到函数引用,作为函数 右边有名字现在和f1的关闭,对吧?*/ this.f2 = 函数 f3(x){ 返回 x; } 函数 f4() {}; } x = 新 AAA(); x.f1(); //ReferenceError: f3 未定义这里发生了什么?除了“f4”之外,还有谁在关闭“f1”?我们不能在没有'this'的情况下调用同一个对象函数吗?
【问题讨论】:
标签: javascript closures