⊗jsPmRcInr 275 of 505 menu

Рекурсия дар 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 оғоз кардан мумкин нест - агар ин кор анҷом дода шавад, пас даъвати беохири функсияҳо ба даст хоҳад омад.

Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан