带有回调函数的Javascript不工作

带有回调函数的Javascript不工作,javascript,Javascript,这是我的javascript程序,它应该在代码底部输出alert语句,但没有应用。为什么 //function mean function mean(values, callback) { var total = 0; for (var i = 0, max = values.length; i < max; i++) { if (typeof callback === "function") { total += callback(

这是我的javascript程序,它应该在代码底部输出alert语句,但没有应用。为什么

//function mean
function mean(values, callback) {
    var total = 0;
    for (var i = 0, max = values.length; i < max; i++) {
        if (typeof callback === "function") {
            total += callback(value[i]);
        } else {
            total += values[i];
        }
    }
}

var result = mean([2, 5, 7, 11, 4], function (x) {
    return 2 * x;
});

alert("The result mean is " + result + ".");
//函数平均值
函数平均值(值、回调){
var合计=0;
对于(变量i=0,max=values.length;i
您需要返回
总计
并将
更改为

函数平均值(值,回调){
var合计=0;
对于(变量i=0,max=values.length;i警报(“结果平均值为“+结果+”)您需要返回
总计
并将
更改为

函数平均值(值,回调){
var合计=0;
对于(变量i=0,max=values.length;i警报(“结果平均值为“+结果+”)以及Pointy提到的输入错误,如果我读对了,你永远不会从mean返回值,尝试返回total

以及Pointy提到的输入错误,如果我读对了,你永远不会从mean返回值,尝试返回total

您必须在回调函数中返回total,并确保值变量未键入值。

您必须在回调函数中返回total,并确保值变量未键入值。

total+=callback(值[i])--应该是
而不是
。保持浏览器控制台打开,以便查看报告的错误。值未定义在JavaScription中检查控制台是否存在错误您必须写入值[i]并返回变量total,以获得除未定义之外的结果。如果需要,您可以自己回答该问题。堆栈溢出不是调试服务。
total+=回调(值[i])--应该是
而不是
。保持浏览器控制台打开,以便查看报告的错误。值未定义在JavaScription中检查控制台是否存在错误您必须写入值[i]并返回变量total,以获得除未定义之外的结果。如果需要,您可以自己回答该问题。堆栈溢出不是调试服务。