The following terms are used when talking about the functionality of proxies.
- handler
-
Placeholder object which contains traps.
- traps
-
The methods that provide property access. (This is analogous to the concept of traps in operating systems.)
- target
-
Object which the proxy virtualizes. It is often used as storage backend for the proxy. Invariants (semantics that remain unchanged) regarding object non-extensibility or non-configurable properties are verified against the target.
- invariants
-
Semantics that remain unchanged when implementing custom operations are called invariants. If you violate the invariants of a handler, a
TypeError
will be thrown.