⊗jsPmCxUFC 434 of 505 menu

Nepiesaistītas funkcijas konteksts JavaScript

Paskatīsimies, kas notiks, ja funkcijā norādīsiet this, bet nepiesaistīsiet to nevienam elementam, šādi:

function func() { console.log(this); } func();

Šajā gadījumā rezultāts ir atkarīgs no tā, vai mums ir ieslēgts stingrais režīms vai nē. Ja režīms nav stingrs, tad this glabāsies saite uz window:

function func() { console.log(this); // saite uz logu window } func();

Bet, ja režīms ir stingrs, tad this glabāsies undefined:

"use strict"; function func() { console.log(this); // undefined } func();

No iepriekš minētā varētu šķist, ka stingrajā režīmā this vienmēr būs undefined. Nemaz tā nav! Ja vienkārši izvadīsiet this ārpus funkcijas, tad tajā būs saite uz window neatkarīgi no režīma:

"use strict"; console.log(this); // this satur saiti uz window

Secinājumi

Jebkurā funkcijā var rakstīt this, tas neizraisīs kādas kļūdas JavaScript. Bet, kas tieši atradīsies šajā this nav noteikts līdz funkcijas izsaukuma brīdim. Turklāt dažādos funkcijas izsaukumos this var iegūt dažādas vērtības. Viss atkarīgs no konteksta, kurā funkcija tika izsaukta.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt