函数和for循环用于计算平均值的问题

时间:2019-03-16 14:30:19

标签: javascript

我的JavaScript代码有什么问题? 这是一个简单的应用程序的实践,该应用程序获取数字并计算平均值并显示出来。

var dataArr = [];

function addD() {
  var dataSin = prompt("What number do you want to add?");
  dataArr[dataArr.length] = dataSin;
  document.getElementById("targetD").innerHTML = dataArr;
}

function getR() {
  var sum =0;

  for(i=0; i<dataArr.length; i++) {

    var sum = sum += dataArr[i];
  }

  document.getElementById("targetR").innerHTML = sum/dataArr.length;
}

1 个答案:

答案 0 :(得分:0)

如果您需要计算平均值,请查看下面的代码。它使用了更多功能的方法,与JS很好地兼容。

const getSum = (numbers) => numbers.reduce((sum, n) => sum + n, 0)

const getAverage = (numbers) => getSum(numbers) / numbers.length

const avgHasToBe3 = [ 3, 6, 2, 3, 1 ]
console.log(getAverage(avgHasToBe3))

如果您想坚持使用for的方法,请尽量减少对代码的更改。

function getR() {
  var sum = 0;

  for (var i = 0; i < dataArr.length; i++) {
    sum += dataArr[i];
  }

  document.getElementById("targetR").innerHTML = sum / dataArr.length;
}