在javascript中使用for循环计算平均值

在javascript中使用for循环计算平均值,javascript,function,average,Javascript,Function,Average,你知道为什么它不起作用吗?它应该提示您输入2个值,然后用平均值提醒您。不确定出了什么问题。for循环的语法错误: <input type="button" value="Click for the average" onclick="averageCalculator (2)"> 应该是 for(i=0, i <= numvalues, i++>) { 提示:另外,最好使用 for(i=0; i <= numvalues; i++) { 从那时起,我将成为局部

你知道为什么它不起作用吗?它应该提示您输入2个值,然后用平均值提醒您。不确定出了什么问题。

for循环的语法错误:

<input type="button" value="Click for the average" onclick="averageCalculator (2)">
应该是

for(i=0, i <= numvalues, i++>) {
提示:另外,最好使用

for(i=0; i <= numvalues; i++) {

从那时起,我将成为局部变量而不是全局变量。

for循环的语法错误:

<input type="button" value="Click for the average" onclick="averageCalculator (2)">
应该是

for(i=0, i <= numvalues, i++>) {
提示:另外,最好使用

for(i=0; i <= numvalues; i++) {
从那时起,我将成为一个局部变量,而不是全局变量。

尝试这样做

forvar i=0;我试着这样做


forvar i=0;i您的代码有多个问题。for循环的格式不好,需要使用分号终止语句。您还需要声明变量。循环将运行numvalues+1次,这就是我删除循环中=的原因。此外,如果要计算平均值,则需要除以numvalue

for(var i=0; i <= numvalues; i++) {
在无效语法的基础上,您将在这里遇到javascript的一个常见问题。输入被视为字符串,它们不会被添加,而是被连接起来。提供2分和2分将得到11分。2与2=22/2=11相连。在将它们相加之前,需要将值显式转换为数字:

function averageCalculator (numvalues) {
var result1 = 0;
for(i=0; i < numvalues; i++) {    
    var score = prompt("input the score");   
    result1 += score;    
}
alert(result1 / numvalues);
}

上述代码将正确返回2

您的代码存在多个问题。for循环的格式不好,需要使用分号终止语句。您还需要声明变量。循环将运行numvalues+1次,这就是我删除循环中=的原因。此外,如果要计算平均值,则需要除以numvalue

for(var i=0; i <= numvalues; i++) {
在无效语法的基础上,您将在这里遇到javascript的一个常见问题。输入被视为字符串,它们不会被添加,而是被连接起来。提供2分和2分将得到11分。2与2=22/2=11相连。在将它们相加之前,需要将值显式转换为数字:

function averageCalculator (numvalues) {
var result1 = 0;
for(i=0; i < numvalues; i++) {    
    var score = prompt("input the score");   
    result1 += score;    
}
alert(result1 / numvalues);
}

上述代码将正确返回2个使用函数式编程库的替代解决方案,如:

虽然有点复杂和效率较低,但您将完全摆脱循环

编辑


+提示“输入分数”与NumberCompt“输入分数”的效果相同。

使用函数式编程库的替代解决方案,如:

虽然有点复杂和效率较低,但您将完全摆脱循环

编辑


+提示“输入分数”与数字提示“输入分数”的效果相同。

现在发生了什么?回答错误或代码未执行?您可能希望将警报更改为alertresult1/numvalues;im获取引用错误:未定义averageCalculator,因此代码未执行。似乎被定义为一个函数。。。不知道现在发生了什么?回答错误或代码未执行?您可能希望将警报更改为alertresult1/numvalues;im获取引用错误:未定义averageCalculator,因此代码未执行。似乎被定义为一个函数。。。不确定你是对的JW。。。nic也会编辑@richardU r right JW提到的警报部分。。。nic也会编辑@richardPlease提到的警报部分,不要使用装箱值!而是使用+n!如果您确定字符串包含一个数字,那么这是正确的方法。否则,您可以使用parseIntn或parseFloatn。请不要使用装箱值!而是使用+n!如果您确定字符串包含一个数字,那么这是正确的方法。否则,您可以解析它或解析它。