У меня есть массив, который постоянно обновляется с аналоговыми показаниями с булавки Arduino.Найти значение 100 последних значений в массиве
Я хотел бы создать функцию, которая принимает последние 100 значений в массиве и возвращает среднее из них (массив имеет максимальную длину 100 000, при которой он начинает «перемещать» и «нажимать», чтобы сделать пространство для новых значений).
Я создал эту функцию, но она возвращает 'NaN' каждый раз, когда:
function returnAverage(){
var averageArray = [];
var sum = 0;
var sampleEnd = values.length
for (var x = sampleEnd - 100; x < sampleEnd; x++) {
averageArray[x] = values[x]
}
for(var i = 0; i < averageArray.length; i++){
sum += parseInt(averageArray[i]);
}
var avg = sum/averageArray.length;
console.log(avg)
}
Есть идеи?
Что такое 'values'? Гарантировано ли оно как минимум на 100? –
Согласен с @TedHopp. Если значения пусты или если он содержит нечисловой символ, вы получите NaN. – linstantnoodles