Для чего используются Proxy и Reflect в JavaScript?

Я прочитал документацию по Proxy и Reflect на MDN, но мало что понял. Может ли кто-нибудь объяснить или упомянуть реальное использование этих возможностей ES6 в реальном мире.

  • Одно из хороших применений прокси, которое я нашел, это то, что мы можем объявить значения наших объектов как частные —
const object = {
    name: "Rajesh Royal",
    Age: 23,
    _Sex: "Male"
}

const logger = {
    get(target, property){
        if(property.startsWith("_")){
            throw new Error(`${property} is a private property.`);
        }

        console.log(`Reading the property ${property}`);
        return target[property];
    }
}

const Logger = new Proxy(object, logger);

// now if you try to access the private property it will throw an error
Logger._Sex

Uncaught Error: _Sex is a private property.
    at Object.get (<anonymous>:4:19)
    at <anonymous>:1:8
Вход в полноэкранный режим Выход из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий