任何人都可以告诉我如何更好地编写此代码,让我的工作变得有点麻烦
function sumRange(from, to) {
var f = from;
var t = to;
var result = from;
if(to >= from) {
while (to > from) {
from ++;
result += from;
}
return result;
} else if (from > to) {
result = to;
while (from > to ) {
to++;
result += to;
}
return result;
}
}
答案 0 :(得分:3)
a
和b
之间的整数之和为:
((b - a + 1) * (a + b)) / 2
请参阅http://mathworld.wolfram.com/ArithmeticSeries.html
以任何顺序处理参数:
function sumRange(a, b) {
return ((Math.abs(b - a) + 1) * (a + b)) / 2;
}