456 Views
Here is the sort of thing we are going to do today. var obj = new Proxy({}, { get: function (target, key, receiver) { console.log(`getting ${key}!`); return Reflect.get(target, key, receiver); }, set: function (target, key, value, receiver) { console.log(`setting ${key}!`); return Reflect.set(target, key, value, receiver); } }); That’s a little complicated for a first example. I’ll explain all the parts later. For now, check out the object we created: > obj.count = 1; setting count! > ++obj.count; getting count! setting count! 2 What’s going on here? We are intercepting property accesses on this object. We are overloading the "." operator.