⊗jsPmCxVS 437 of 505 menu

Իրադարձության համատեքստը փոփոխականի միջոցով JavaScript-ում

Լուծումը հետևյալն է՝ արտաքին ֆունկցիայի մեջ գրենք this-ը ցանկացած փոփոխականի մեջ, և այդ փոփոխականը կհասանելի կլինի ներքին ֆունկցիայի համար, ինչպես և բոլոր փոփոխականները (սովորաբար այդ փոփոխականն անվանում են self)։ Այսպիսով մենք կփոխանցենք this-ը արտաքին ֆունկցիայից դեպի ներքինը։

"use strict"; let elem = document.querySelector('#elem'); elem.addEventListener('blur', parent); function parent() { console.log(this.value); // կարտածի 'text' let self = this; // գրենք this-ը ցանկացած փոփոխականի մեջ, օրինակ՝ self-ի մեջ function child() { console.log(self.value); // կարտածի 'text' } child(); }

Ենթադրենք տրված է այսպիսի կոդ։

<input id="elem" value="3"> "use strict"; let elem = document.querySelector('#elem'); elem.addEventListener('blur', func); function func() { alert( square() ); function square() { return this.value * this.value; } }

Կոդի հեղինակը ցանկանում էր, որ էլեմենտի կողմից ֆոկուսի կորստի դեպքում էկրանին արտածվի value-ից թվի քառակուսին։ Սակայն, ինչ-ինչ պատճառով ֆոկուսի կորստի դեպքում կոնսոլում սխալ է արտածվում։ Ուղղեք կոդի հեղինակի սխալը։ Գրեք տեքստ, որում դուք կբացատրեք կոդի հեղինակին, թե ինչու առաջացավ նրա սխալը։

Հայերեն
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-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել