Работа з рэкурсіяй у JavaScript
У праграмаванні ёсць такое паняцце, як
рэкурсія - гэта калі функцыя выклікае
сама сябе. Давайце паглядзім на прыкладзе.
Вывядзем з дапамогай рэкурсіі лікі ад 1
да 10:
let i = 1;
function func(){
console.log(i);
i++;
if (i <= 10){
func(); // тут функцыя выклікае сама сябе
}
}
func();
Давайце абгаворым, як працуе гэты код.
У нас ёсць глабальная зменная i
і функцыя func, унутры якой у кансоль
выводзіцца змест зменнай i,
а затым робіцца ++.
Калі наша зменная i меншая або
роўная 10, то функцыя выклікаецца паўторна.
Паколькі зменная i - глабальная,
то пры кожным новым выкліку функцыі ў ёй
будзе зададзенае пры папярэднім выкліку значэнне
зменнай i.
Атрымаецца, што функцыя будзе выклікаць сама
сябе да таго часу, пакуль i не стане
больш за 10.
Улічвайте, што ў нашым выпадку нельга функцыю
запусціць без if - калі гэта зрабіць,
то атрымаецца бясконцы выклік функцый.