我们会传递给你一个包含两个数字的数组。返回这两个数字和它们之间所有数字的和。
最小的数字并非总在最前面。
这边是一些提示:
Math.max()
Math.min()
Array.prototype.reduce()
关于提示参考链接:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/max
遇到的问题:
1 在调用Math.max()和Math.min()寻找arr中的最值得时候,通过F12发现,返回了Nan;
解决方法:
通过使用最新的扩展语句spread operator,获得数组中的最大值变得更容易;
参考链接:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/max
最后编码实现:
function sumAll(arr) {
var max=Math.max(...arr);
var min=Math.min(...arr);
var count=[min,max].reduce(function(accumulator, currentValue, currentIndex, array){
var sum=0;
for(var i=accumulator;i<=currentValue;i++){
sum+=i;
}
return sum;
});
return count;
}
sumAll([1, 4]);
算法还是通过自己动手得才能算是自己得~~小声bb
网友评论