⊗jsPmCxCM 440 of 505 menu

Povezivanje konteksta pomoću metode call u JavaScriptu

Dakle, razumeli smo kako zapravo radi this. Hajde sada da pogledamo metode koje nam dozvoljavaju da nametnemo u kom kontekstu se funkcija poziva (to jest da nametnemo, čemu je jednako this).

Prva metoda koju ćemo razmotriti, zove se call. Hajde da pogledamo kako radi na primeru. Recimo da imamo input:

<input id="elem" value="text">

Hajde da dobijemo referencu na ovaj input i zapišemo je u promenljivu elem:

let elem = document.querySelector('#elem');

Hajde sada da napravimo funkciju func, unutar koje ćemo ispisati this.value:

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

Trenutno naša funkcija ne zna na šta se odnosi this. E, da smo je povezali preko addEventListener, onda bi znala. Ali mi to nećemo uraditi. Umesto toga ćemo prosto pozvati našu funkciju, rekavši joj da this mora biti jednak elem.

To se radi ovako: func.call(elem). Ovaj kod je ekvivalentan prostom pozivu funkcije func ovako: func(), samo sa uslovom da je this jednak elem.

Dakle, sintaksa metode call je: funkcija.call(objekat). Hajde da spojimo sve zajedno:

let elem = document.querySelector('#elem'); function func() { console.log(this.value); // ispisaće value input-a } func.call(elem);

Data je funkcija:

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

Data su tri input-a:

<input id="elem1" value="text1"> <input id="elem2" value="text2"> <input id="elem3" value="text3">

Pomoću metode call i funkcije func ispisati na ekran value svakog od input-a.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij