⊗jsPmCxVS 437 of 505 menu

Kontekst poprzez zmienną w JavaScript

Rozwiązanie jest następujące: w funkcji zewnętrznej zapiszemy this do dowolnej zmiennej i ta zmienna będzie dostępna w funkcji wewnętrznej, jak wszystkie zmienne (zwykle tę zmienną nazywa się self). W ten sposób przekażemy this z funkcji zewnętrznej do wewnętrznej:

"use strict"; let elem = document.querySelector('#elem'); elem.addEventListener('blur', parent); function parent() { console.log(this.value); // wypisze 'text' let self = this; // zapiszemy this w dowolnej zmiennej, na przykład w self function child() { console.log(self.value); // wypisze 'text' } child(); }

Niech będzie dany taki kod:

<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 kodu chciał, aby po utracie fokusu na ekranie wyświetlił się kwadrat liczby z value inputa. Jednakże z jakiegoś powodu po utracie fokusu w konsoli pojawia się błąd. Popraw błąd autora kodu. Napisz tekst, w którym wyjaśnisz autorowi kodu, dlaczego powstał jego błąd.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć