Я сделал консольный журнал стека [exponent-1], используя
var stack = Array;
function power(base, exponent){
if ( exponent === 0 ) {
return 1;
} else {
stack[exponent-1] = base * power(base, exponent - 1);
console.log(stack[exponent-1]);return stack[exponent-1];
}
}
O / P:
power(2,5)
2
4
8
16
32
Таким образом, класс функции рекурсивно, пока показатель степени не станет 0 (n-й вызов), затем он начнет возвращать результаты
first it will return 1 (because exponent is 0)
then returns 2 * 1 (return of n call)
then 2 * 2 (return of n-1 call)
then 2 * 4 (return of n-2 call) and so on