【问题标题】:Simple average function in JavascriptJavascript中的简单平均函数
【发布时间】:2017-05-03 03:20:54
【问题描述】:

如何使用函数计算平均值:

function calculate(array) {
    var sum = 0;
    for (var i = 0; i < array.length; i++) {
        sum = sum + array[i];
    }
    return sum;
}
document.write(calculate([24, 88, 12, 4]));

(我不明白如何获取参数长度)

【问题讨论】:

  • return sum / array.length;?
  • array.size() & array.length 都有你的参数长度

标签: javascript arrays function for-loop arguments


【解决方案1】:

x = []
function average(...x) {
    let sum = 0,
        avg = 0;
    for (let i of x ){
        sum = sum + i;
        avg = sum/x.length;
    }
    
    return avg
}

console.log(average(2, 6 , 8 , 14));

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
【解决方案2】:

这个 for...of 循环应该可以完美运行

function average(...nums) {
    let sum = 0;
    let avg = 0;

    for(const num of nums) {
    sum += num;
    avg = sum/nums.length;
    }

    return avg;
}
console.log(average(24, 88, 12, 4));

【讨论】:

    【解决方案3】:

    您也可以使用 for-of 循环尝试这种方式。

    function average(...nums) {
        let total = 0;
        for(const num of nums) {
        total += num/nums.length;
        }
        return total;
    }
    console.log(average(24, 88, 12, 4));
    

    【讨论】:

      【解决方案4】:

      要获得平均值,只需将值相加并除以数组中的索引数,即长度

      function calculate(array) {
          return array.reduce((a, b) => a + b) / array.length;
      }
      
      console.log(calculate([24, 88, 12, 4]));

      【讨论】:

        【解决方案5】:

        您可以使用reduce() 方法轻松计算平均值:

        const avg = array.reduce((a, b) => a + b) / array.length
        

        【讨论】:

          【解决方案6】:

          使用数组的长度属性:

          function calculate(array) {
              var i = 0, sum = 0, len = array.length;
              while (i < len) {
                  sum = sum + array[i++];
              }
              return sum / len;
          }
          

          【讨论】:

            【解决方案7】:

            您的函数将数组中的所有数字相加。在返回行中,您应该更改为以下内容:

            return sum / array.length;
            

            你应该改变这一行:

            console.log(calculate([24, 88, 12, 4]));
            

            到这里:

            console.log(calculate({24, 88, 12, 4}));
            

            【讨论】:

            • lenght 应该是 length
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-01-24
            • 2017-05-19
            • 1970-01-01
            • 1970-01-01
            • 2011-12-04
            • 2020-03-07
            相关资源
            最近更新 更多