Wie wird der Proxy-Handler vom Proxy-Objekt abgerufen?

Zum Beispiel, wenn ich diesen Handler / Proxy habe (von derMDN Beispiel) ...

var handler = {
    get: function(target, name){
        return name in target?
            target[name] :
            37;
    }
};

var p = new Proxy({}, handler);
p.a = 1;
p.b = undefined;

console.log(p.a, p.b); // 1, undefined
console.log('c' in p, p.c); // false, 37

ist es möglich, den Proxy zu testen,p, auf irgendeine Weise, die es mir ermöglicht, das @ zu bekommhandler Objekt zurück.

Etwas in der Art von:

p.__handler__   // returns handler object -> Object {get: handler.get(), set: handler.set(), ...}
p.__handler__.get  // returns get prop/fn of handler -> function(target, name){ ...}

Natürlich sind die verschiedenen im Handler eingerichteten Traps dem Proxy noch "bekannt", aber gibt es eine eindeutige Möglichkeit, sie / den Handler vom Proxy selbst zurückzugeben? Wenn das so ist, wie

Ich habe derzeit keinen speziellen Anwendungsfall dafür, aber ich könnte dies als nützlich erachten, wenn Sie einen Handler / Traps dynamisch ändern möchten, nachdem Sie bereits einen Proxy haben.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage