以下是我必须要开始的内容,我正在学习javascript,所以请尽量简化您的回复。我知道如果你需要更加详细,请这样做。说明是:
/*
create a function named 'avgNumbers'
- accept 1 parameter into the function that will be an array of unlimited numbers
- find the average of all the numbers
- return the average from the function
- console.log the answer outside of the function
*/
//Code start here
console.log("1. avg of an array of numbers");
var avgNumbers = function(arr){
}
console.log('avg number = ', avgNumbers([1,2,3,4,5]));
答案 0 :(得分:3)
我不确定你想要多少帮助。如果我们只是给你答案,你就不会学到任何东西,所以我会给你一些想法,但没有答案:
要计算n
个数字的平均值,您可以将它们全部加起来除以n
。例如,3个数字1
,1
和7
的平均值为:(1 + 1 + 7)/3 = 3
。
你想对你的数组做同样的事情,但是n = array.length;
。
因此,您应该使用loop来计算总和。然后在你的循环除以array.length
后返回结果。
答案 1 :(得分:2)
您可以使用reduce
对值进行求和。
reduce()
方法对累加器和每个应用函数 数组的值(从左到右)必须将其减少为单个 值
然后将总和除以数组中元素的数量:
var avgNumbers = function(arr){
return arr.reduce(function(a, b){ return a + b; }, 0) / arr.length;
}
答案 2 :(得分:1)
只需循环所有元素并添加它们,然后除以元素的数量:
var avgNumbers = function (arr) {
var total = 0;
for (var i = 0; i < arr.length; i++) {
total += arr[i];
}
return total / arr.length;
}
答案 3 :(得分:1)
试试这个:
console.log("1. avg of an array of numbers");
var avgNumbers = function(arr){
var sum = 0;
for(var i =0;i<arr.length;i++) {
sum+=arr[i];
}
return sum/arr.length;
}
console.log('avg number = ', avgNumbers([1,2,3,4,5]));
答案 4 :(得分:0)