Javascript 平均计算器(用户输入的多个值)

标签 javascript average

我希望能够让用户输入多个成绩,然后让 Javascript 计算输入的这些成绩的平均值。当用户输入完成绩后,他们可以点击取消并关闭提示框,如果他们根本没有输入任何成绩(默认为 0),那么程序会显示没有输入成绩。

我是新手!我正在我的大学上 javascript 类(class),这有点令人困惑,因为老师不教!我们只需要引用 W3schools,根本没有列出这些东西!

另一种解释: “开发一个程序,允许教师输入任意数量的成绩,进行平均计算,然后以符合语法的句子显示结果。如果没有输入成绩,该程序还必须告诉用户。你需要使用循环和“if else”语句。一定要声明所有变量并测试被零除的可能性。”

<script type = "text/javascript">
  var gradeCounter = 0,
    gradeValue = 0,
    total = 0,
    average, grade;
var sum = 0;
var i = 0;
while (gradeValue != -1 && gradeValue <= 100) {

  //Prompt the user
  grade = prompt("Enter Grades, -1 to Quit:", "0");
  //Parse the prompt result to a int
  sum += parseInt(grade);
  i++;
  if (i >= 0 && grade != null) {
    document.getElementById("average").innerHTML = "The average of the grades you've entered are " + sum / i + ".";
  } else {
    document.getElementById("error").innerHTML = "There were no grades entered";
  }
} </script>

再次感谢!

最佳答案

这没问题

已更新

再次更新

JSFIDDLE

// note: the dom must be ready before execution

var btn = document.querySelector('button'),
    res = document.getElementById('average');

btn.addEventListener('click', function(e) {
    var val = prompt('Enter comma delimited grades to average');
    val = val.length ? val.replace(/\s/g, '').split(',') : '';
    
    var count = val.length || 0; // no 0 division

    if (!count) {
       res.innerHTML = 'you must enter comma delimited numbers to average';
       return;
    } else {
        var average = val.reduce(function(a, b) { // is a loop
            return +a + +b;
        });
        
        res.innerHTML = (average /= count).toFixed(1);        
    }

});

html

<button id="avgBtn">Prompt</button>
<p>Average: <span id="average"></span></p>

关于Javascript 平均计算器(用户输入的多个值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27370076/

相关文章:

javascript - WebGL2 : incomplete framebuffer

javascript - jQuery 数组没有在我的数组中找到对象?

sql - 使用 LIMIT 从 MySQL 表中选择平均值

Python - 当年 3 个月移动平均线

javascript - JavaScript (jQuery) 和处理程序是从内存中运行还是每次都读取?

javascript - 如何区分express.js中路由的路径和参数?

javascript - 逗号在 Javascript if 语句中是否意味着语法有效?

mysql - 查询整个文件,但按单独的数据查询,按每个唯一列元素分组

c++ - 高精度计算平均值的最佳策略

flutter - 如何获得抖动中的平均颜色?