javascript - 此回调函数未定义

标签 javascript callback

prepOutput() 是一个简单的函数,它获取平均值并返回回调输出(),但我在“返回回调(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 因为没有值返回)作为 prepOutput

callback 参数的值
prepOutput(avgSpeed(), output);

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

关于javascript - 此回调函数未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25736304/

相关文章:

javascript - NodeJS 让 Promise 等待 foreach 循环完成

javascript - (Javascript) 两个函数的输出之间的随机整数

javascript - AJAX - 不返回值

javascript - jQuery ui 可排序 toArray 跳过 1 项

javascript - 如何选择 '.on show.bs.modal'内的触发按钮[Bootstrap modal]

JavaScript 异步函数

c++ - 用指向实例中方法的指针替换参数中的静态函数指针

c++ - 实现一个进度条类

node.js - 将回调传递给以await 为前缀的函数。执行顺序

javascript - D3 – 比较并传递多个数据集中的对象值