Как получить среднее значение массива в JavaScript - PullRequest
0 голосов
/ 04 февраля 2020

Я пишу код, который позволяет вводить 10 случайных чисел в окне подсказки. Числа хранятся в массиве с именем tal. Я понял, как получить самое высокое и самое низкое значение, но я не могу получить среднее значение. Может кто-нибудь помочь мне с решением или помочь мне выбрать правильный путь?

Вот мой код:

let tal = [];
for (i = 0; i < 10; i++) {
  tal[i] = prompt('Add a number: ', '');
  tal.sort(function(a, b) {
    return a - b
  });
}
document.body.innerHTML += Math.max.apply(null, tal) + '<br>';
document.body.innerHTML += Math.min.apply(null, tal) + '<br>';

Ответы [ 2 ]

3 голосов
/ 04 февраля 2020

Я думаю, что если вы используете reduce(), чтобы сначала суммировать числа, а затем разделить это число на длину, которую вы получаете средним числом в конце.

Из документация Array.prototype.reduce():

Метод redu () выполняет функцию редуктора (которую вы предоставляете) для каждого элемента массива, в результате чего получается одно выходное значение.

const numbers = [3,4,5,2,4,6,78,53,2,1,2];
const sum = numbers.reduce((a,c) => a + c, 0);
const avg = sum / numbers.length;

console.log(avg);

Надеюсь, это поможет!

1 голос
/ 04 февраля 2020

Вы можете сделать что-то вроде этого:

var average = getAverage(tal);

function getAverage(arr) {
  var sum = 0;
  for(var i = 0; i < arr.length; i++) {
    sum += Number(arr[i]);
  }

  return sum / arr.length;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...