⊗jsPmClInr 262 of 505 menu

ՋավաՍկրիպտում փակումները

Եկեք այժմ ուսումնասիրենք փակում հասկացությունը (closure): Փաստորեն, դուք արդեն ծանոթ եք այս հասկացությանը, մնացել է միայն ճիշտ տերմինաբանությունը իմանալ:

Այսպիսով, փակումը ֆունկցիա է իր բոլոր արտաքին փոփոխականների հետ, որոնք նրան հասանելի են: Կամ, այլ կերպ ասած, փակումը ֆունկցիա է իր լեքսիկական միջավայրի հետ միասին:

ՋավաՍկրիպտում ամենից հաճախ, "ֆունկցիայի փակում" ասելով, նկատի չեն ունենում հենց այդ ֆունկցիան, այլ հենց դրա արտաքին փոփոխականները: Եթե ինչ-որ ֆունկցիա ստանում է փոփոխական իր լեքսիկական միջավայրից, ապա ասում են "փոփոխականը վերցվում է փակումից":

Հիշենք նախորդ դասում մեր գրած կոդը.

function test() { let num = 1; return function() { console.log(num); } } let func = test(); func(); // կարտածի 1

Այս դեպքում կարելի է ասել, որ func ֆունկցիան ստանում է num փոփոխականի արժեքը փակումից: Նաև կարելի է ասել, որ func ֆունկցիան պահում է num փոփոխականի արժեքը փակումում:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել