递归实现:求n个数字的和 n=5---> 5+4+3+2+1
//
//函数的声明
function getSum(x) {
if (x == 1) {
return...1;
}
return x + getSum(x - 1);
}
//函数的调用
console.log(getSum(5));
执行过程:
代码执行...getSum(5)--->进入函数, 此时的x是5, 执行的是5+getSum(4), 此时代码等待
此时5+getSum(4), 代码先不进行计算, 先执行getSum(4), 进入函数, 执行的是4...+getSum(3), 等待, 先执行的是getSum(3), 进入函数, 执行3+getSum(2), 等待,
先执行getSum(2), 进入函数, 执行 2+getSum(1); 等待, 先执行getSum...(1), 执行的是x==1的判断,return 1,
所以, 此时getSum(1)的结果是1, 开始向外走出去
2+getSum(1) 此时的结果是:2+1
执行:
getSum(2)---->2+1