Начал учить js по курсам и параллельно читать книгу "Выразительный JavaScript", начал читать тему про рекурсию, в принципе, понимаю, как она работает, но на примере из книги не могу разобраться.
function findSolution(target) {
function find(current, history) {
if(current == target) {
return history;
} else if(current > target) {
return null;
} else {
return find(current + 5, `(${history} + 5)`) ||
find(current * 3, `(${history} * 3)`);
}
}
return find(1, '1');
}
console.log(findSolution(24));
В частности, не могу понять, как язык понимает, нужно умножать ему или прибавлять, прошу, помогите!!!