4 + sumTo(3);
-> 4 + (3 + sumTo(2))
-> 4 + 3 + (2 + sumTo(1))
-> 4 + 3 + 2 + sumTo(1)
-> 4 + 3 + 2 + 1
function sumTo(n) {
if (n === 1) return 1;
return n + sumTo(n - 1);
}
function fact(n) {
if (n === 1) return 1;
return n * fact(n - 1);
}
참고