你能实现一个JavaScript对象吗,让每个缺失的属性都变成一个有效的值?
我在源码中加入了一些保护措施,意在让不法分子在访问我已知的全局变量时更难得手。
如果这些变量被引用,我希望能够把它们的值改成其他内容,以此来混淆他们。
const myGlobal = {};
console.log(myGlobal.apple); // returns "undefined", but I want lets say "apple" to be returned
console.log(myGlobal.javascript); // returns "undefined", but I want lets say "javascript" to be returned
解决方案
你可以使用 Proxy对象 来实现这一点
const myGlobal = new Proxy({}, {
get(_, prop) {
return prop;
}
});
console.log(myGlobal.apple); // "apple"
console.log(myGlobal.javascript); // "javascript"
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。