рекурсия — это функция, которая вызывает сама себя
должна иметь случай или условие, при котором
Требование
функция прекращается иначе будет переполнение стека вызова (функция будет вызывать сама себя бесконечно)
Примеры
- факториал
следующие
5!=1*2*3*4*5;
const factorial = (n) => {
if (n === 1) {
return 1
}
return n*factorial(n-1);
}
console.log(factorial(5))
- числа фибоначи
последующее число равняется сумме предыдущих чисел
1,1,2,3,5,8,13,21
const fibonachi = (n) => {
if (n === 1 || n ===2){
return 1
}
return fibonachi(n-1) + fibonachi(n-2)
}
console.log(fibonachi(5))