Mikä on tämä "avainsana" JavaScript-muodossa?
Koska tiedämme, että esineet ovat JavaScriptin perusrakenteita, siellä on erityinen esine, jota kutsutaan myös nimellä 'tämä' objekti ja 'tämän' arvo voidaan nähdä jokaisessa JavaScriptin suorittamisen rivissä, josta päätetään jälleen sen perusteella, kuinka koodi on teloitetaan. Aiheesta aiomme oppia “tätä” avainsanaa JavaScript.
"Tämän" avainsanan merkitys JavaScriptillä
- Tämän "objektilla" JavaScriptillä on monia tärkeitä rooleja ja käyttötarkoituksia. Sitä käytetään ensisijaisesti osoittamaan esine esiintymään omalla menetelmällä tai rakentajalla. Osoittamisen ohella 'tätä' voidaan käyttää myös seuraamaan kontekstin suoritusta, joka perustuu siihen, mihin funktiota kutsutaan.
- Seuraava JavaScript-toiminnon "tämä" -toiminto on, että linkki suorituskontekstiin voi muuttua. Ja viimeiseksi, linkki suorituskontekstiin voidaan myös luoda, kun siihen viitataan takaisinsoitto-funktion avulla, vaikka funktio määritetään rakennusobjektin sisällä.
Miksi käyttää tätä avainsanaa JavaScriptinä?
- JavaScriptissä 'tätä' avainsanaa käytetään monissa yhteyksissä hyödyntääkseen konteksteja parhaalla mahdollisella tavalla. Periaatteessa 'tätä' avainsanaa käytetään viittaamaan johonkin esineeseen tai funktioon JavaScriptissä. Kuten sanalla (tämä) itsessään voimme ymmärtää, että se viittaa johonkin. Ymmärtääksesi 'tätä' paremmin käytännössä, voidaan pitää esimerkkiä, jossa herra X pelasi krikettiä ja hän voitti pelin.
- Joten täällä, herra X: n uudelleenkäytön sijasta, me käytimme 'hän', joka viittaa vain herraan X. Se auttaa meitä olemaan pitämättä mainitsemasta samaa asiaa uudestaan ja uudestaan. Samoin, myös JavaScriptissä, voimme käyttää 'tätä' funktiota tai objektia viitaamaan johonkin muuhun funktioon tai esineeseen kyseisen funktion tai objektin käynnistämän arvon kanssa. Yleensä 'tätä' käytetään funktion tai menetelmän sisällä, mutta sitä voidaan käyttää myös funktion ulkopuolella (globaalissa laajuudessa).
Kuinka käyttää tätä "avainsanaa"?
- Koska tiedämme, että JavaScript on skriptikieli, joten koodeja ei tarvitse koota, se suoritetaan ajon aikana. Tulkki voi suorittaa sen suoraan rivi riviltä. Ja sitä ympäristöä tai laajuutta, jossa JavaScript-koodeja suoritetaan, kutsutaan “Execution Context”.
- JavaScript runtime ylläpitää pinoa toteutuskonteksteja ja pitää nykyisen pinon päällä. Objekti, johon viitataan ”tällä”, muuttuu joka kerta, kun toteutuskonteksti vaihdetaan.
- Voimme yksinkertaisesti olettaa, että kun toiminto luodaan samaan aikaan, luodaan myös avainsana 'tämä' (kohtauksen takana), joka linkittää kohteeseen, jossa toiminto toimii. 'Tämä' avainsana toimii JavaScripissä eri tavalla kuin muut ohjelmointikielet.
Sillä on erilaisia arvoja riippuen siitä, missä sitä käytämme, esimerkiksi:
- 'tämä' viittaa omistajan esineeseen menetelmässä.
- 'tämä' viittaa globaaliin esineeseen yksinään tilanteessa.
- 'tämä' viittaa globaaleihin kohteisiin myös yksinkertaisessa toiminnassa.
- 'tämä' viittaa tapahtuman elementtiin, joka vastaanottaa tapahtuman.
- 'tätä' ei ole määritelty tiukassa tilassa.
1. Käytetään kentän kanssa
Esimerkki : Alla 'tämä' viittaa esineeseen, jota kutsutaan henkilöksi. Ja henkilö on menetelmän fullName omistaja.
var employee = (
firstName: “Raju”,
lastName: “Chaudhury”,
id: 123
fullName: function() (
return this.firstName + “ ” + this.lastName;
)
)
Lyhyt esimerkki lomakekentästä:
check to alert this object name
Kirjoita nimi ja tarkista alla oleva radiovaihtoehto varoittaaksesi merkinnästäsi
Valitse tämä varoittaaksesi tekstikentän merkinnän
Ilmoita lähetettyjen tapahtumien käsittelijä avaamalla lomake nähdäksesi toimenpiteet, jotka suoritetaan, kun lähetä-painiketta napsautetaan
2. Käytetään rakentajan kutsumiseen
Yleensä, kun käytämme avainsanaa "uusi" luodaksesi esiintymän funktiobjektille, käytämme funktiota rakentajana.
Seuraavassa esimerkissä ilmoitamme pyörätoiminnon ja vedomme sen sitten rakentajana:
function Bike(name)(
this.name = name;
)
Bike.prototype.getName = function()(
return this.name;
)
var bike = new Bike('Pulsar');
console.log(bike.getName());
Yllä olevassa esimerkissä uusi pyörä ('Pulsar') on pyörätoiminnon rakentaja. Täällä JavaScript luo uuden objektin ja laittaa 'tämän' avainsanan hiljattain luotuun objektiin. Joten, nyt voimme vedota Bike () -toimintoon tai rakentajaksi. Tässä tapauksessa, jos poistamme 'uuden' avainsanan, siinä näkyy jokin seuraavanlainen virhe:
var bajaj = Bike('Bajaj');
console.log(bajaj.name);
/ * Se näkyy nimellä TypeError: Ei voida määrittää määrittelemättömän ominaisuuden nimeä * /
Koska Bike () -funktiossa tämä asetetaan globaalille objektille, bajaj.name-tulokset ovat määrittelemättömiä.
Jotta pyörä () -toiminto kutsutaan aina konstruktorin avulla, tarkistamme Pyörä () -toiminnon alkaessa alla:
function Bike(name)(
if( ! (this instanceof Bike)(
throw Error(“We should use new operator to call a function”);
)
this.name = name;
)
Siellä on metaproperty, joka tunnetaan nimellä “new.target” ja jonka avulla voidaan havaita, kutsutaanko funktioon yksinkertainen kutsu tai rakentaja.
Täällä voimme muokata Pyörä () -toimintoa, joka käyttää new.target-metaominaisuuksia kuten alla
function Bike(name)(
if( ! new.target)(
throw Error(“We should use new operator to call a function”);
)
this.name = name;
)
3. Palauttaa nykyisen luokan ilmentymän
Luokkalauseke on myös tapa määritellä luokka JavaScript-muodossa. Se voidaan myös nimetä tai nimetä. Nimi on paikallinen sen luokan rungolle, ja t voidaan hakea luokan ominaisuuksilla.
/ * esimerkki nimeämättömästä luokan lausekkeesta * /
let Mobile = class (
constructor(cost, weight)(
this.cost = cost;
this.weight = weight;
)
);
console.log(Mobile.name); //Output: Mobile
/ * esimerkki nimeltään luokkalausekkeesta * /
let Mobile = class Mobile2(
constructor(cost, weight)(
this.cost = cost;
this.weight = weight;
)
);
console.log(Mobile.name);
Lähtö: Mobile2
4. Käytetään menetelmäparametrina
Kun kutsumme kohteen menetelmäksi, JavaScript asettaa 'tämän' objektille, joka omistaa menetelmän.
Esimerkki:
var Bike = (
name: 'Pulsar',
getName: function()(
return this.name;
)
)
console.log(bike.getName()); /*Pulsar*/
Tässä getName () -menetelmässä viitataan pyöräobjektiin.
johtopäätös
"Tämä" avainsana JavaScript-ohjelmassa on tehokas työkalu, joka yleensä auttaa kehittäjiä viitaamaan ominaisuuksia tietyissä tilanteissa, mutta toisinaan se voi olla myös melko hankala haettaessa eri laajuustasoilla. 'Tämän' arvo voidaan asettaa myös nimenomaisesti kutsulla (), sitoa () ja soveltaa () myös. Yleensä 'tämän' arvo määritetään funktion toteuttamiskontekstissa. Nuolitoiminnot eivät yleensä sido 'tätä' ja sen sijaan 'tämä' on sidottu leksisesti.
Suositellut artikkelit
Tämä on opas "tämän" avainsanan JavaScriptiin. Tässä keskustellaan esimerkin ohella tämän avainsanan tärkeydestä ja käytöstä JavaScriptillä. Voit myös tarkastella seuraavaa artikkelia.
- Kapselointi JavaScriptiin
- Lisäys Lajittele JavaScriptiin
- Palindrome JavaScript-muodossa
- JavaScript-kääntäjät
- tämä avainsana javalla | Esimerkkejä avainsanasta
- EsimerkkejäOfista Java-esimerkissä