Hvordan lage proxy -objekt i JavaScript

Hvordan lage proxy -objekt i JavaScript
I JavaScript, Fullmakt Objekt lar deg definere tilpasset atferd indirekte for et objekts grunnleggende operasjoner. Det tillater også utviklerne å pakke et proxy -objekt rundt et annet objekt og lage en uoppdagelig barriere rundt det.

Ved hjelp av proxy -objektet kan du ringe funksjoner, få tilgang til egenskaper og angi mål Objektets egenskaper. Et proxy -objekt anses også som et utmerket verktøy for innkapsling, ettersom det begrenser direkte tilgang til det opprinnelige objektet.

Denne oppskrivningen vil forklare prosedyren for å opprette et proxy-objekt i JavaScript. Så la oss starte!

Hvordan lage proxy -objekt i JavaScript

En proxy () konstruktør brukes til å lage et proxy -objekt i JavaScript. Det opprettede proxy -objektet vil deretter bli brukt til å avskjære de typiske operasjonene til det opprinnelige objektet.

Sjekk ut syntaksen til JavaScript Proxy Constructor.

Syntaks for å lage et proxy -objekt i JavaScript

Du kan bruke syntaksen nedenfor for å lage et nytt proxy-objekt i JavaScript:

La proxy = ny proxy (mål, behandler);

Her, “mål”Representerer objektet som vil bli pakket inn,”handler”Er objektet som omfatter metodene for å kontrollere oppførselen til det spesifiserte målobjektet. Til slutt, “feller”Blir lagt til i“handler”Objekt som metoder.

Eksempel: Hvordan lage et proxy -objekt i JavaScript

Først av alt vil vi lage et objekt som heter “ansatt”Å ha følgende tre egenskaper:

const ansatt =
Navn: 'Alex',
Kjønn Mann',
Betegnelse: 'Manager',

Deretter en "handler”Objekt er definert, som inneholder JavaScript "få()”Metode som“felle”. JavaScript get () -metoden vil hente den spesifiserte “eiendom" av "mål”Sak og lagre verdien i Handler -objektet:

const handler =
få (mål, eiendom)
konsoll.Log ('Property $ Property er tilgjengelig');
Retur Target [Property];

I neste trinn vil vi opprette et proxy -objekt "Proxy ansatt”Og passere“handler”Og“ansatt”Som målobjekter mot konstruktøren:

const proxyemployment = new Proxy (ansatt, handler);

Proxy ansatt”Bruker“ansatt”Objekt for å lagre data, og det har da all tilgang til“ansatt”Objektegenskaper:

Til slutt vil vi bruke "Proxy ansatt”Objekt for å få“Navn”Og“betegnelse”Egenskaper til“ansatt”Objekt:

konsoll.Logg (ProxyEmployee.Navn);
konsoll.Logg (ProxyEmployee.betegnelse);

Undergitt utgang betyr at "Proxy ansatt”Objekt har fått tilgang til Employee -objektets egenskaper:

En annen viktig ting å huske er at hvis du oppdaterer noen eiendomsverdi av "ansatt”Objekt, endringer kan også sees i“Proxy ansatt”.

For eksempel har vi endret "ansatt”Objekt“Navn”Eiendomsverdi til“Paul”:

ansatt.Navn = 'Paul';
konsoll.Logg (ProxyEmployee.Navn);

Produksjon

Som du kan se fra utgangen, verdien av "Proxy ansatt.Navn”Forandres også. Tilsvarende enhver modifisering i "Proxy ansatt”Objekt vil også reflektere over“ansatt”Objekt:

Proxy ansatt.betegnelse = 'forfatter';
konsoll.Logg (ansatt.betegnelse);

Utførelse av den ovennevnte koden vil også oppdatere “betegnelse”Eiendomsverdi av“ansatt”Objekt:

Inntil dette punktet har du lært prosedyren for å lage et proxy -objekt i JavaScript. Nå, sjekk ut tabellen nedenfor for å få en kort oversikt over fullmaktsfelle -metodene.

Proxy feller i JavaScript

Proxy feller Beskrivelse
få() få()"Proxy Trap utløses når proxy -objektet får tilgang til et målobjektets egenskap.
sett() sett()"Proxy Trap brukes til å angi det spesifiserte målobjektets eiendomsverdi.
getPrototype () getPrototype ()”Metode feller en intern samtale til objektet.getPrototype () og returnerer målobjektets prototype.
setprototype () setprototype () ”Angir prototypen til målobjektet ved å påkalle objektet.setprototype () -metode.
isExtensibile () isExtentible ()"Proxy Trap påkaller gjenstand.isExtentible () metode for å bestemme om målet er utvidbart eller ikke.
PreventExtensions () PreventExtensions ()”Trap kaller ut“Gjenstand.PreventExtensions ()”Metode for å forhindre utvidelser av målobjektet.

Vi har diskutert den kritiske informasjonen om å lage et proxy -objekt i JavaScript.

Dessuten er det også gitt en kort beskrivelse av noen nyttige proxy -feller; Du kan utforske dem videre i henhold til dine preferanser.

Konklusjon

Proxy () konstruktør brukes til å lage et proxy -objekt i JavaScript. Den aksepterer to argumenter: mål og handler, der målet representerer objektet som vil bli pakket inn, og behandler er objektet som består av metoder (feller) for å kontrollere oppførselen til det spesifiserte målet. Denne oppskrivningen forklarte prosedyren for å lage proxy-objekter i JavaScript.