const days = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday", ]; function proxy(target) { return new Proxy(target, { get: (target, property, receiver) => { const result = Reflect.get(target, property, receiver); if (days.includes(result)) { return { toString: () => result, valueOf: () => result, length: "24 hours", }; } return result; }, set: (target, property, receiver) => { return Reflect.set(target, property, receiver); }, }); } with (proxy(globalThis)) { x = "Monday"; y = "Something Else"; z = "Saturday"; console.log(x.length, y.length, z.length); }