ES6 - Proxy API
ES6 implementuje formę wstawienniczą metaprogramowania przy użyciu proxy. Podobnie jak ReflectAPI, Proxy API to kolejny sposób implementacji metaprogramowania w ES6. Obiekt Proxy służy do definiowania niestandardowego zachowania dla podstawowych operacji. Obiekt proxy wykonuje pewne operacje w imieniu rzeczywistego obiektu.
Poniżej podano różne terminologie związane z proxy ES6
Sr.No | Metoda i opis |
---|---|
1 | handler Obiekt zastępczy zawierający pułapki |
2 | traps Metody, które zapewniają dostęp do właściwości. Jest to analogiczne do koncepcji pułapek w systemach operacyjnych |
1 | target Obiekt, który wirtualizuje proxy. Jest często używany jako zaplecze pamięci dla serwera proxy. |
Składnia
Składnia podana poniżej dotyczy Proxy API, gdzie, target może być dowolnym obiektem, takim jak tablica, funkcja lub inny serwer proxy i handlerjest obiektem, którego właściwościami są funkcje. Definiuje zachowanie proxy.
const proxy = new Proxy(target,handler)
Metody obsługi
Obiekt obsługi zawiera pułapki dla serwera proxy. Wszystkie pułapki są opcjonalne. Jeśli pułapka nie została zdefiniowana, domyślnym zachowaniem jest przekazanie operacji do celu. Niektóre typowe metody obsługi są następujące -
Sr.No | Metoda i opis |
---|---|
1 |
handler.apply ()
Pułapka na wywołanie funkcji. |
2 |
handler.construct ()
Pułapka na nowego operatora. |
3 |
handler.get ()
Pułapka na pobieranie wartości właściwości. |
4 |
handler.set ()
Pułapka na ustawianie wartości właściwości. |
5 |
handler.has ()
Pułapka TA dla operatora in. |