Работа з рэкурсіяй у JavaScript

У праграмаванні ёсць такое паняцце, як рэкурсія - гэта калі функцыя выклікае сама сябе. Давайце паглядзім на прыкладзе. Вывядзем з дапамогай рэкурсіі лікі ад 1 да 10:

javascriptlet i = 1;

function func(){
  console.log(i);
  i++;
  
  if (i <= 10){
    func(); // тут функцыя выклікае сама сябе
  }
}
func();

Давайце абгаворым, як працуе гэты код.

У нас ёсць глабальная зменная i і функцыя func, унутры якой у кансоль выводзіцца змест зменнай i, а затым робіцца ++.

Калі наша зменная i меншая або роўная 10, то функцыя выклікаецца паўторна. Паколькі зменная i - глабальная, то пры кожным новым выкліку функцыі ў ёй будзе зададзенае пры папярэднім выкліку значэнне зменнай i.

Атрымаецца, што функцыя будзе выклікаць сама сябе да таго часу, пакуль i не стане больш за 10.

Улічвайте, што ў нашым выпадку нельга функцыю запусціць без if - калі гэта зрабіць, то атрымаецца бясконцы выклік функцый.