【问题标题】:How can I get the average of an array using a function? [closed]如何使用函数获得数组的平均值? [关闭]
【发布时间】:2020-04-25 16:59:57
【问题描述】:

测验说明: 编写一个函数,该函数接受一个数字数组作为参数并返回它们的平均值作为结果。

示例:average([2,2,5,8]) 返回 4.25average([59,60,40]) 返回53

到目前为止的代码

function average(array) {

    var denominator = array.length; 
    var numbers = array;

    for( var i = 0; i < array.length; i++) {
        var total = numbers[0] + numbers[1] + numbers[2];
    }

    var avg = total / denominator;
    return avg;
    console.log( avg );
}

average([1,2,3]);

//返回错误。不知道错误在哪里。此外,如果您要扩展数组并仍然获得平均值,那么代码将是什么,无论数组参数中的输入如何。 //请帮忙。谢谢!

【问题讨论】:

  • 为什么java被标记?
  • Java 之于 JavaScript,Car 之于 Carpet。
  • 提示:使用numbers[i]获取当前元素的数量。如果将这些中的每一个都添加到累积数字中,那么您就有了总数。
  • 据我所知,没有(语法)错误。 “返回错误”有点模糊......
  • 感谢@MCEmperor 的提示,成功了。谢谢乔纳斯/苏迪尔

标签: javascript arrays function parameters average


【解决方案1】:
function average(nums) {
return nums.reduce((a, b) => (a + b)) / nums.length;
}

average([1,2,3]);

【讨论】:

    【解决方案2】:

    let average = (array) => array.reduce((a, b) => a + b) / array.length;
    console.log(average([5,10,30]));

    【讨论】:

      【解决方案3】:

      这是你的平均功能;

      function average(numbers) {
        let denominator = numbers.length;
        let sum = 0;
      
        for (let i = 0; i < denominator; i++) {
          sum = sum + numbers[i];
        }
      
        return sum / denominator;
      }
      
      console.log(average([1, 2, 3]));
      console.log(average([2, 2, 5, 8]));
      console.log(average([59, 60, 40]));
      

      【讨论】:

        【解决方案4】:

        请参考以下网址计算总和。然后通过将这个总和除以 array.length 来找到平均值

        https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-09-03
          • 1970-01-01
          • 2017-08-02
          • 1970-01-01
          • 1970-01-01
          • 2014-05-28
          • 1970-01-01
          相关资源
          最近更新 更多