ES6 - API proxy
ES6 implementa la forma di intercessione della meta programmazione usando i proxy. Simile a ReflectAPI, l'API proxy è un altro modo per implementare la meta programmazione in ES6. L'oggetto Proxy viene utilizzato per definire il comportamento personalizzato per le operazioni fondamentali. Un oggetto proxy esegue alcune operazioni per conto dell'oggetto reale.
Di seguito vengono fornite le varie terminologie relative ai proxy ES6
Suor n | Metodo e descrizione |
---|---|
1 | handler Oggetto segnaposto che contiene trap |
2 | traps I metodi che forniscono l'accesso alle proprietà. Questo è analogo al concetto di trap nei sistemi operativi |
1 | target Oggetto virtualizzato dal proxy. Viene spesso utilizzato come backend di archiviazione per il proxy. |
Sintassi
La sintassi indicata di seguito è per l'API proxy, dove, target può essere qualsiasi tipo di oggetto come array, funzione o un altro proxy e handlerè un oggetto le cui proprietà sono funzioni. Questo definisce il comportamento del proxy.
const proxy = new Proxy(target,handler)
Metodi del gestore
L'oggetto gestore contiene trap per Proxy. Tutte le trappole sono opzionali. Se non è stato definito un trap, il comportamento predefinito è l'inoltro dell'operazione alla destinazione. Alcuni metodi di gestione comuni sono i seguenti:
Suor n | Metodo e descrizione |
---|---|
1 |
handler.apply ()
Una trappola per una chiamata di funzione. |
2 |
handler.construct ()
Una trappola per il nuovo operatore. |
3 |
handler.get ()
Una trappola per ottenere valori di proprietà. |
4 |
handler.set ()
Una trappola per impostare i valori delle proprietà. |
5 |
handler.has ()
Trappola TA per l'operatore in. |