Ben*_*uiz 5 javascript arrays reduce
我正在尝试解决黑客排名上的“一笔非常大的金额”挑战:https://www.hackerrank.com/challenges/a-very-big-sum/problem
\n在那里我必须对给出的数组中的所有数字求和,所以我想出了两个解决方案:
\n第一个解决方案
\nfunction aVeryBigSum(ar){\n let sum = 0;\n for(let i = 0; i < ar.length; i++){\n sum += i;\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n第二种解决方案
\nfunction(ar){\n let sum = ar.reduce((accumulator, currentValue) => {\n accumulator + currentValue;\n });\n}\nRun Code Online (Sandbox Code Playgroud)\n但它们都不起作用,我不\xc2\xb4t知道为什么,我想也许我没有按照黑客等级希望我写的那样,但我不确定
\nsum += i;应该sum += ar[i];
还返回总和
function aVeryBigSum(ar){
let sum = 0;
for(let i = 0; i < ar.length; i++){
sum += ar[i];
}
return sum;
}
Run Code Online (Sandbox Code Playgroud)
减速器功能也应该像
function a(ar){
let sum = (accumulator, currentValue) => accumulator + currentValue;
return ar.reduce(sum);
}
Run Code Online (Sandbox Code Playgroud)