287、我们会传递给你一个包含两个数字的数组。返回这两个数字和它们之间所有数字的和。最小的数字并非总在最前面。
function sumAll(arr)
{
var min = Math.min(arr[0],arr[1]);
var max = Math.max(arr[0],arr[1]);
var newArr = [];
for(var i=0;i<=max-min;i++){
newArr[i] = min+i;
}
return newArr.reduce(function(a,b){return a+b;});
}
function sumAll(arr)
{
var sum = (arr[1]+arr[0])*(Math.abs(arr[1]-arr[0])+1)/2;
return sum;
}
我的方法:
function sumAll(arr) {
var max=Math.max(arr[0],arr[1]);
var min=Math.min(arr[0],arr[1]);
var sum=0;
for(var i=min;i<=max;i++)
{
sum+=i;
}
return sum;
}
检验结果:

网友评论