Навіщо потрібні проксі JS?

У JavaScript вбудований особливий об'єкт Proxy – це "повноваження діяти від імені іншої особи" у перекладі з англійської мови. За допомогою proxy-об'єкта можна керувати доступом до властивостей практично будь-яких об'єктів.

Він використовується для перегляду інформації про класи, інтерфейси, методи, поля, конструктори та анотації під час виконання java програм. Наприклад, за допомогою Reflection в Java можна використовувати ООП патерн – Public Morozov.

Reflect – це вбудований об'єкт, який надає методи для операцій, що перехоплюються JavaScript. Ці методи аналогічні методам proxy handler (en-US). Reflect – це функціональний, а простий об'єкт, не є сконструйованим.

Проксіоб'єкт виступає як посередник між клієнтом і доступним об'єктом. Ціль проксіоб'єкта – відстежувати тривалість життя доступного об'єкта та переадресовувати дзвінки доступного об'єкта тільки в тому випадку, якщо його не знищено.