正在对此回调函数进行未定义

Getting undefined for this callback function

本文关键字:未定义 函数 回调      更新时间:2023-09-26

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);
    }

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

prepOutput(avgSpeed(), output);

问题:演示-outputprepOutput之前调用
演示:Fiddle