未定义此回调函数

时间:2014-09-09 03:34:11

标签: javascript callback

prepOutput()是一个简单的函数,它取平均值并返回回调输出(),但是我在“return callback(out)”中得到一个未定义的错误。为什么回调不起作用?

    function finish() {
        isRunning = false;
        prepOutput(avgSpeed(),output());

    }

    function avgSpeed() {
        var avg = (totReactt/numClick);
        return avg.toFixed(2);
    }

    function prepOutput(avgS, callback){
        var out = "Your averege speed is " + avgS;

        return callback(out);

    }

    function output(x) {
        alert("Thank you for playing! " + x);
    }

1 个答案:

答案 0 :(得分:3)

您需要传递一个函数引用作为回调的值,而不是调用output并传递从它返回的值(undefined,因为没有返回值)作为值callback

prepOutput参数
prepOutput(avgSpeed(), output);

问题:在output之前调用Demo - prepOutput 演示:Fiddle

相关问题