SOURCE

/*
用三种方式实现:

使用循环。
使用递归,对 n > 1 执行 sumTo(n) = n + sumTo(n-1)。
使用 等差数列 求和公式. 
*/


function sumTo_for(n){
    let sum = 0;
    for(let i = 0; i<=n; i++) {
        sum += i;
    }
   
    return sum;
}

function sumTo_recursive(n){
    if(n === 0){
        return 0;
    } else {
        return n + sumTo_recursive(n-1);
    }
}



function sumTo(type){
   switch (type) {
       case 'for':
        return sumTo_for;
       case 'recursive':
        return sumTo_recursive;
       default:
        break;
   }
}

console.log(sumTo('for')(1000))

console.log(sumTo('recursive')(1000))
console 命令行工具 X clear

                    
>
console