【发布时间】:2013-08-07 13:30:54
【问题描述】:
如何让它返回 x+y+z 的值而不是错误?
function A (x) {
return function B (y) {
return function(z) {
return x+y+z;
}
}
};
var outer = new A(4);
var inner = new outer(B(9));
inner(4);
【问题讨论】:
-
代码运行良好。你想达到什么目标?不清楚你在问什么。
-
这里不需要“新”,你可以称它为
A(2)(3)(4)或var f = A(2); var g = f(3); alert(g(4));,几乎一样... -
yent..感谢您的出色回答。请把它作为一个答案。杰夫......不,它不起作用,你试过了吗? “未定义的 B”。摆脱....它返回 x+y+z。只是一个概念证明。
-
定义“不起作用”。据我们所知,您希望程序说明与未定义函数有关的运行时错误。在这种情况下,它可以完美运行。
标签: javascript closures