add = (a, b) => (b === 0) ? a : sec(add(a, b - 1));
const mpy = (a, b) => (b === 1) ? a : add( a , mpy(a, b - 1) );
const pwr = (a, b) => (b === 1) ? a : mpy(a, pwr(a, b - 1));
console.log(pwr(3, 2)); // 9
в общем смотри, аргументами функции mpy у тебя будет а и результат выполнения функции pwr при b === 1, что тоже в результате даёт а
https://learn.javascript.ru/recursion
Обсуждают сегодня