gpt4 book ai didi

javascript - 在用户向数组中输入另一个数字后计算数组的平均值

转载 作者:行者123 更新时间:2023-11-30 11:08:23 26 4
gpt4 key购买 nike

我有一个分数文本字段,用户必须输入 0 到 100 之间的值才能添加到数组中。显示结果后,应计算数组中数字的平均值。但是,每当我输入一个数字时,平均值就会完全关闭并且非常高。我该如何解决? (例如数组[88, 98, 77, 88] 并输入数字99,平均值跳转到7039)

我的代码:

var scores = [88, 98, 77, 88];

var addScore = function() {
var scoreInput = $("score").value;
if (scoreInput.length == 0 || scoreInput > 100 || scoreInput < 0 || isNaN(scoreInput)) {
alert("You must enter a valid score.");
} else {
scores.push(scoreInput);
}
}

var displayResults = function() {
var highest = Math.max(...scores);
var total = 0;

for (var i = 0; i < scores.length; i++) {
total += scores[i];
}
var average = total / scores.length;

var output = "<h2>Results </h2><br>Average Score = " + average + ;
$("results").innerHTML = output;
};

最佳答案

你的数组正在接收一个字符串而不是一个数字。在进行数学计算之前,您必须使用 parseInt 或 parseFloat 将用户输入转换为数字。

var addScore = function () {
var scoreInput = $("#score").value; // or ".score"
scoreInput = parseFloat(scoreInput); // here. If not valid, returns NaN.
if (scoreInput > 100 || scoreInput < 0 || isNaN(scoreInput)) {
alert("You must enter a valid score.");
} else {
scores.push(scoreInput);
}
}

关于javascript - 在用户向数组中输入另一个数字后计算数组的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54758855/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com