JavaScript 如何将数组中每个元素映射到一个值后计算平均值

JavaScript 如何将数组中每个元素映射到一个值后计算平均值

给定一个数组,任务是在将每个元素映射到一个值后计算数组的平均值。

Input : arr=[2, 3, 5, 6, 7]
Output: 4.6
Explanation : (2+3+5+6+7)/5 = 4.6 

Input : [5,7,2,7,8,3,9,3]
Output: 5.5
Explanation : (5+7+2+7+8+3+9+3)/8 = 5.5 

方法1

  • 使用foreach()循环遍历数组元素。
  • 将每个元素的和存储在一个变量中。
  • 所有元素的平均值将为sum/length,其中length是给定数组的大小。

    Index.js

<script>
  arr = [2, 3, 5, 6, 7];
 
  // Function to calculate the average of numbers
  function avg(arr) {
    var sum = 0;
 
    // Iterate the elements of the array
    arr.forEach(function (item, idx) {
      sum += item;
    });
 
    // Returning the average of the numbers
    return sum / arr.length;
  }
 
  console.log(avg(arr));
</script>

输出:

4.6

方法2

  • 使用for循环迭代数组中的数字
  • 使用 ParseInt() 函数将数字解析为十进制格式
  • 将数字的和存储在一个变量中
  • 所有元素的平均值为和除以长度,其中长度是给定数组的大小

Index.js

<script>
  arr = [2, 3, 5, 6, 7];
  var sum = 0;
 
  // Iterating the elements of the loop
  for (var i = 0; i < arr.length; i++) {
 
    // Store the sum of all numbers
    sum += parseInt(arr[i], 10);
  }
 
  // Taking the average
  var avg = sum / arr.length;
 
  console.log(avg);
</script>

输出:

4.6

方法3

使用reduce()函数

  • 在这种方法中,我们将数组中的两个数字替换为它们在原始数组中的和。
  • reduce()函数返回一个单一的值,即数组中所有数字的和。
  • 将返回值存储在一个变量中(使用sum变量)。
  • 所有元素的平均值将是sum/length,其中length是给定数组的大小。

Index.js

<script>
  var arr = [1, 2, 3, 4];
  // Callback function calculating 
  // the sum of two numbers
  function check(a, b) {
    return a + b;
  }
   
  // Reducing the numbers of the array
  var sum = arr.reduce(check);
   
  // Calculating the average of the numbers
  var avg = sum / arr.length;
 
  console.log(avg);
</script>

输出:

2.5

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程