Working with the Proxy API
The ES6 Proxy API provides the proxy constructor to create proxies. The proxy constructor takes two arguments, which are:
- Target: This is the object that will be wrapped by the proxy
- Handler: This is an object that contains the traps for the
target
object
A trap can be defined for every possible operation on the target
object. If a trap is not defined, then the default action takes place on the target. Here is a code example that shows how to create a proxy, and does various operations on the target
object. In this example, we have not defined any traps:
const target = { age: 12 }; const handler = {}; const proxy = new Proxy(target, handler); proxy.name = "Eden"; console.log(target.name); console.log(proxy.name); console.log(target.age); console.log(proxy.age);
This outputs the following:
Eden Eden 12 12
Here, we can see that the age property of the target
object can be accessed via the proxy
object. When we added the name property to the proxy
object, it was...