Za pomocą obiektu proxy możesz wywołać funkcje, uzyskiwać dostęp do właściwości i ustawić cel właściwości obiektu. Obiekt proxy jest również uważany za doskonałe narzędzie do enkapsulacji, ponieważ ogranicza bezpośredni dostęp do oryginalnego obiektu.
Ten zapis wyjaśni procedurę utworzenia obiektu proxy w JavaScript. A więc zacznijmy!
Jak utworzyć obiekt proxy w JavaScript
Konstruktor proxy () jest wykorzystywany do tworzenia obiektu proxy w JavaScript. Utworzony obiekt proxy zostanie następnie użyty do przechwytywania typowych operacji oryginalnego obiektu.
Sprawdź składnię konstruktora proxy JavaScript.
Składnia do tworzenia obiektu proxy w JavaScript
Możesz użyć podgryzanej składni do tworzenia nowego obiektu proxy w JavaScript:
niech proxy = nowy proxy (cel, przewodnik);Tutaj, "cel”Reprezentuje obiekt, który zostanie owinięty”treser”Jest obiektem zawierającym metody kontrolowania zachowania określonego obiektu docelowego. Wreszcie „majdan”Są dodawane do„treser„Obiekt jako jego metody.
Przykład: Jak utworzyć obiekt proxy w JavaScript
Przede wszystkim utworzymy obiekt o nazwie „pracownik„Posiadanie następujących trzech właściwości:
const pracownika =Następnie "treser„Obiekt jest zdefiniowany, który zawiera JavaScript "Dostawać()„Metoda jako„pułapka". Metoda JavaScript Get () odzyska określone „nieruchomość”cel„Zakład i przechowuj jego wartość w obiekcie obsługi:
const Handler =W następnym kroku utworzymy obiekt proxy „ProxyEmployee”I przekaż„treser" I "pracownik”Jako obiekty docelowe konstruktora:
const proxyEmployee = new Proxy (pracownik, obsługa);„„ProxyEmployee„Wykorzystuje„ ”pracownik„Object do przechowywania danych, a następnie ma dostęp do„pracownik„Właściwości obiektu:
Na koniec użyjemy „ProxyEmployee„Obiekt, aby uzyskać„nazwa" I "Przeznaczenie„Właściwości„pracownik" obiekt:
konsola.Log (proxyEmployee.nazwa);Poniżej podane wyjście oznacza to „ProxyEmployee„Obiekt z powodzeniem uzyskał dostęp do właściwości obiektu pracownika:
Kolejną ważną rzeczą do zapamiętania jest to, że jeśli zaktualizujesz jakąkolwiek wartość właściwości „pracownik„Obiekt, zmiany można również zobaczyć w„ProxyEmployee".
Na przykład zmodyfikowaliśmy „pracownik„Obiekt„nazwa„Wartość nieruchomości do„Paweł”:
pracownik.nazwa = „Paul”;Wyjście
Jak widać z wyjścia, wartość „ProxyEmployee.nazwa”Zmieni się również. Podobnie każda modyfikacja w „ProxyEmployee„Obiekt zastanowi się również nad„pracownik" obiekt:
ProxyEmployee.oznaczenie = „autor”;Wykonanie powyższego kodu, zaktualizuje również „Przeznaczenie„Wartość właściwości„ ”pracownik" obiekt:
Do tego momentu nauczyłeś się procedury utworzenia obiektu proxy w JavaScript. Teraz sprawdź poniższą tabelę, aby uzyskać krótki przegląd metod pułapki proxy.
Pułapki proxy w JavaScript
Pułapki proxy | Opis |
Dostawać() | „„Dostawać()„Pułapka proxy jest wyzwalana, gdy obiekt proxy uzyskuje dostęp do właściwości obiektu docelowego. |
ustawić() | „„ustawić()„Prexy pułapka służy do ustawienia wartości właściwości określonego obiektu docelowego. |
getPrototype () | „„getPrototype ()”Metoda zatrzymuje wewnętrzne wywołanie obiektu.getPrototype () i zwraca prototyp obiektu docelowego. |
setPrototype () | „„setPrototype () ”Ustawia prototyp obiektu docelowego, wywołując obiekt.metoda setPrototype (). |
isextensibile () | „„isextensible ()”Proxy pułapka wywołuje obiekt.isextensible () metoda ustalenia, czy cel jest rozszerzalny, czy nie. |
Zapobieganie rozkładom () | „„Zapobieganie rozkładom ()”Pułapka zawołała„Obiekt.Zapobieganie rozkładom ()”Metoda zapobiegania rozszerzeniu obiektu docelowego. |
Omówiliśmy kluczowe informacje o tworzeniu obiektu proxy w JavaScript.
Ponadto przedstawiono również krótki opis niektórych przydatnych pułapek proxy; Możesz je zbadać dalej według swoich preferencji.
Wniosek
Konstruktor proxy () jest wykorzystywany do utworzenia obiektu proxy w JavaScript. Akceptuje dwa argumenty: cel i obsługa, w których cel reprezentuje obiekt, który zostanie owinięty, a obsługa jest obiektem, który zawiera metody (pułapki) do kontrolowania zachowania określonego celu. Ten zapis wyjaśnił procedurę tworzenia obiektów proxy w JavaScript.