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-сіз іске қосуға болмайды - егер мұны істесек,
онда функциялардың шексіз шақырылуы пайда болады.