ES6 - прокси API
ES6 реализует промежуточную форму метапрограммирования с использованием прокси. Подобно ReflectAPI, Proxy API - это еще один способ реализации метапрограммирования в ES6. Объект Proxy используется для определения настраиваемого поведения для основных операций. Прокси-объект выполняет некоторые операции от имени реального объекта.
Различные термины, относящиеся к прокси ES6, приведены ниже.
Старший Нет | Метод и описание |
---|---|
1 | handler Объект-заполнитель, содержащий ловушки |
2 | traps Методы, обеспечивающие доступ к свойствам. Это аналогично концепции ловушек в операционных системах. |
1 | target Объект, который виртуализирует прокси. Он часто используется как серверная часть хранилища для прокси. |
Синтаксис
Приведенный ниже синтаксис предназначен для Proxy API, где, target может быть любым объектом, таким как массив, функция или другой прокси и handlerэто объект, свойства которого являются функциями. Это определяет поведение прокси.
const proxy = new Proxy(target,handler)
Методы обработчика
Объект-обработчик содержит ловушки для прокси. Все ловушки необязательны. Если ловушка не была определена, по умолчанию операция перенаправляется на цель. Вот некоторые общие методы обработчика:
Старший Нет | Метод и описание |
---|---|
1 |
handler.apply ()
Ловушка для вызова функции. |
2 |
handler.construct ()
Ловушка для нового оператора. |
3 |
handler.get ()
Ловушка для получения ценностей собственности. |
4 |
handler.set ()
Ловушка для установки значений свойств. |
5 |
handler.has ()
Ловушка TA для оператора in. |