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);
问题:演示-output
在prepOutput
之前调用
演示:Fiddle