JavaScript -objekttilbehør brukes til å få tilgang til og oppdatere objektene og to nøkkelord som brukes for denne funksjonen er getter, og den andre er setteren. JavaScript introduserte getters and setters i ES5 i 2009.
Vi ser på hva getters og settere er og hvordan du kan bruke dem i JavaScript i denne opplæringen, samt gå over hvorfor du bør bruke eller angi metoder for JavaScript. Bortsett fra dette, vil vi diskutere gjenstand.DefineProperty () også. Til slutt vil vi skinne litt lys over hvilken nettleser som støtter settet og få metoder. Så la oss komme i gang.
Få nøkkelord
Get -metoden brukes til å hente en verdi, som navnet tilsier, og i den tekniske verden kan den defineres som et bindemiddel for en objektegenskap til en funksjon som kalles når eiendommen er ønsket. Vi kan ikke få verdien før vi får tilgang til get -metoden. Vi definerer imidlertid objektets egenskap på forhånd.
Eksempel:
const spiller =
Navn: "Hazard",
Klubb: "Chelsea",
Shirtno: 10,
få clubName ()
Returner dette.klubb;
;
Varsel (spiller.klubbnavn);
I dette eksemplet brukte vi ClubName Property For å få verdien av klubbeiendommen.
Angi nøkkelord
Det er det motsatte av get nøkkelordet. Det brukes til å sette en verdi. I den tekniske verden kan det defineres som et bindemiddel av en objektegenskap til en funksjon når vi ønsker å sette en eiendom.
Eksempel:
const spiller =
Navn: "",
Klubb: "Chelsea",
Shirtno: 10,
// Angi et spillernavn
set setName (setName)
dette.navn = setName ;;
;
// passering/innstilling av navnet i-e objektegenskap ved hjelp av en setter
spiller.setName = "Mount";
// La oss se dataene gjennom et varsel
Varsel (spiller.Navn);
I dette eksemplet opprettet vi et objekt først. I det objektet opprettet vi en angitt metode ved hjelp av fast nøkkelord der vi setter navnet på spilleren som blir gitt til den. Etter objektet satte vi navnet på spilleren, og så viste vi resultatet ved hjelp av et varsel.
Funksjon vs getters
Nå må du tenke, er ikke de samme, vel svaret er ja og nei. La oss forklare dette ved hjelp av eksempler:
Eksempelfunksjon:
const spiller =
Navn: "Hazard",
Klubb: "Chelsea",
Shirtno: 10,
myfunc: funksjon ()
Returner dette.Navn+"spiller for"+dette.klubb;
;
Varsel (spiller.myfunc ());
Eksempel getter:
const spiller =
Navn: "Hazard",
Klubb: "Chelsea",
Shirtno: 10,
Få myFunc ()
Returner dette.Navn+"spiller for"+dette.klubb;
;
Varsel (spiller.myfunc);
I funksjonseksemplet får vi myfunc () som en funksjon I-E-spiller.myfunc (). Imidlertid får vi tilgang til Eiendom I-E-spiller.myfunc (). Nå vet vi at getter -syntaksen er mer enkel og lesbar enn funksjonen.
Gjenstand.DefineProperty () i JavaScript
De JavaScript -objekt.DefineProperty () brukes til å legge til gettere og setters. Det tar tre argumenter og syntaks av Gjenstand.DefineProperty () er:
Gjenstand.DefineProperty (ObjectName, PropertyName, ObjectDescriptor)
Det første argumentet er objektets navn, det andre er eiendommens navn, og det tredje argumentet er en beskrivelse av objektet.
For eksempel:
// definere et objekt
const spiller =
Navn: "Eden"
// nå får vi en egenskap til et objekt
Gjenstand.DefineProperty (spiller, "getName",
få: funksjon ()
Returner dette.Navn;
);
// nå setter vi eiendommen til et objekt
Gjenstand.DefineProperty (spiller, "setName",
sett: funksjon (val)
dette.navn = val;
);
konsoll.Logg (spiller.Navn);
// la oss gi spilleren et fullt navn
spiller.setName = "Hazard";
konsoll.Logg (spiller.Navn);
I dette eksemplet definerte vi først et objekt. Etter det ved å bruke Gjenstand.DefineProperty () Vi setter setteren og getteren. Nå når vi først trøste.Logg spillernavnet er “Eden”. Men når vi setter navnet ved å bruke setter, endres spillernavnet til Hazard som satt av oss.
Det er sant at når vi bruker getters og setters, sikrer JavaScript bedre datakvalitet.
For eksempel:
// Opprette et objekt
const spiller =
Navn: "Hazard",
Klubb: "Chelsea",
Shirtno: 10,
Få myFunc ()
Returner dette.Navn+"spiller for"+dette.klubb.tolowercase ();
;
// Bruke få visningsdata
Varsel (spiller.myfunc);
I dette eksemplet brukte vi navnet og klubbegenskapen til objektspilleren. Vi konverterte den til øvre og små bokstaver og returnerte den verdien. Løsningen så slik ut:
Hvorfor bruke getters og setters?
Hvilke nettlesere støtter dette?
Microsoft Edge | Opera | Safari | Mozilla Firefox | Google Chrome |
---|---|---|---|---|
9.0 og over | ja | ja | ja | ja |
Konklusjon
Vi lærte nesten alt om JavaScript -vurderere som er Get and Set -metoder i JavaScript i dette innlegget. Når vi går inn i en liten dybde, forklarte vi også hvilket objekt.DefineProperty () er. Bortsett fra det diskuterte vi proffene til å bruke vurderere i JavaScript og hvilke nettlesere som støtter vurderere. Ved å bruke vurderere får en utvikler hans kode til å utføre handlinger bak kulissene og sikrer data. Ettersom det har enklere syntaks, gjør det også koden vår renere.