⊗jsPmCxVS 437 of 505 menu

Kontext přes proměnnou v JavaScriptu

Řešení je následující: ve vnější funkci zapíšeme this do libovolné proměnné a tato proměnná bude dostupná ve vnitřní funkci, stejně jako všechny ostatní proměnné (obvykle se tato proměnná nazývá self). Tímto způsobem přeneseme this z vnější funkce do vnitřní:

"use strict"; let elem = document.querySelector('#elem'); elem.addEventListener('blur', parent); function parent() { console.log(this.value); // vypíše 'text' let self = this; // zapíšeme this do libovolné proměnné, například do self function child() { console.log(self.value); // vypíše 'text' } child(); }

Nechť je dán následující kód:

<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; } }

Autor kódu chtěl, aby při ztrátě fokusu se na obrazovce zobrazil druhá mocnina čísla z value inputu. Avšak z nějakého důvodu při ztrátě fokusu se v konzoli objeví chyba. Opravte chybu v autorově kódu. Napište text, ve kterém poskytnete autorovi kódu vysvětlení, proč jeho chyba nastala.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout