function shouldBe(actual, expected) { | |
if (actual !== expected) | |
throw new Error('bad value: ' + actual); | |
} | |
shouldBe(Reflect.get(new Proxy({}, {}), 0, 1), undefined); | |
shouldBe(Reflect.get(new Proxy({}, {}), 'hello', 1), undefined); | |
{ | |
let target = {}; | |
let handlers = { | |
get: function(theTarget, propName, receiver) { | |
// Receiver can be a primitive value. | |
shouldBe(receiver, 1); | |
return 42; | |
} | |
}; | |
let proxy = new Proxy(target, handlers); | |
shouldBe(Reflect.get(proxy, 0, 1), 42); | |
shouldBe(Reflect.get(proxy, 'hello', 1), 42); | |
} |