调用适用于包装(匿名)函数

时间:2013-01-31 22:01:36

标签: javascript closures

这可能是愚蠢的,但我有这样的代码:

var f = functionWrapper();
f.apply(this, []);

function functionWrapper() {
    return new function () {
        console.log("Called function");
    }
}

为什么会崩溃并发出以下错误:

Uncaught TypeError: Object [object Object] has no method 'apply' test.html:28(anonymous function)

1 个答案:

答案 0 :(得分:3)

改变这个:

    return new function () {

(它立即调用函数作为构造函数,并返回构造的对象)到:

    return function () {

(返回函数本身)。