Page MenuHomePhorge

proxy_has_own.cjs
No OneTemporary

Size
815 B
Referenced Files
None
Subscribers
None

proxy_has_own.cjs

const target = {};
function makeClientCounter() {
return function ClientCounter() {};
}
const proxy = new Proxy(target, {
get(_target, key) {
if (key === 'ClientCounter') return makeClientCounter();
return undefined;
},
getOwnPropertyDescriptor(_target, key) {
if (key === 'ClientCounter') {
return {
value: makeClientCounter(),
writable: false,
configurable: false,
enumerable: false,
};
}
return undefined;
},
});
console.log(`get:${typeof proxy.ClientCounter}`);
console.log(`hasOwn:${Object.prototype.hasOwnProperty.call(proxy, 'ClientCounter')}`);
console.log(`objHasOwn:${Object.hasOwn(proxy, 'ClientCounter')}`);
const desc = Object.getOwnPropertyDescriptor(proxy, 'ClientCounter');
console.log(`desc.value:${typeof desc?.value}`);

File Metadata

Mime Type
text/plain
Expires
Sun, May 3, 9:44 AM (18 h, 38 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
541875
Default Alt Text
proxy_has_own.cjs (815 B)

Event Timeline