我遇到了一个需要解决的编码问题。我被要求在数组中运行一个数字总和,但我无法使代码正常运行。
这是我的代码,以下是我被要求运行的说明:
function sumOfRange(numbers){
var numbers = [1,-1,1,-1,1];
var sum = 0;
for (var i = 0; i < numbers.length; i++){
sum += numbers[i];
}
return sum;
}
// Your Challenge:
// - Create a function named sumOfRange.
// - It accepts one parameter, called numbers, that
// represents an array of numbers.
//
// - In your function, sum the numbers inside the array.
// (Reminder: you'll need a variable to store the result.)
// - Return the result.
// Hint: You do not need to create a new array - you will be
// looping through the parameter, which is already coming in as
// an array.
// Someone else will be calling your function like this:
// sumOfRange([1,2,3,4,5])
// sumOfRange([-4,-5,-10,0])
我一直在
你回来了&#39; 1&#39;。这不是很正确。 [1,2,3,4,5]的总和为15。
任何对此的帮助都会非常感激。
答案 0 :(得分:1)
删除函数sumOfRange()var numbers = [1,-1,1,-1,1]
的第一行,因为你正在重新初始化数字的值,你需要使用调用它时传递给函数的数组。
function sumOfRange(numbers) {
var sum = 0;
for (var i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
return sum;
}
console.log(sumOfRange([1,-1,1,-1,1]));
console.log(sumOfRange([1,2,3,4,5]));
console.log(sumOfRange([-4,-5,-10,0]));
答案 1 :(得分:0)
var a = [1,2,3,4,5];
function sum (arr) {
return arr.reduce(function(prev, curr) {
return prev + curr;
}, 0);
}
// sum(a) - &gt;返回15