'Is there a functional difference between `Reflect.get()` and regular property access in a `Proxy` handler?
MDN's article on Proxy displays two ways to write get() handlers:
const first = new Proxy(target, {
get(target, property, receiver) {
return target[property];
}
});
const second = new Proxy(target, {
get(target, property, receiver) {
return Reflect.get(...arguments);
}
});
As far as I've tested, both seem to work as expected for simple cases.
const target = {
foo: 42
};
const first = new Proxy(target, {
get(target, property, receiver) {
return target[property];
}
});
const second = new Proxy(target, {
get(target, property, receiver) {
return Reflect.get(...arguments);
}
});
console.log(first.foo);
console.log(second.foo);
Is there a functional difference between the two options? Is there a setup in which one approach works, but the other fails?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
