Como obter o manipulador de proxy do objeto proxy?
Por exemplo, se eu tiver esse manipulador / proxy (do diretórioExemplo MDN) ...
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
é possível investigar o proxy,p
, de alguma forma que me permita obter ohandler
objeto de volta.
Algo ao longo das linhas de:
p.__handler__ // returns handler object -> Object {get: handler.get(), set: handler.set(), ...}
p.__handler__.get // returns get prop/fn of handler -> function(target, name){ ...}
Obviamente, os vários traps configurados no manipulador ainda são "conhecidos" pelo proxy, mas existe uma maneira clara de devolvê-los / o manipulador do próprio proxy? Se sim, como?
Não tenho um caso de uso específico para isso no momento, mas poderia ser útil se você quisesse alterar dinamicamente um manipulador / traps depois de já ter um proxy.