Source code
Revision control
Copy as Markdown
Other Tools
/*
* Call the trap with the handler as the this value, the target as the first
* argument, and the name of the property as the second argument
*/
var target = {};
for (var key of ['foo', Symbol('bar')]) {
var called;
var handler = {
has: function (target1, name) {
assertEq(this, handler);
assertEq(target1, target);
assertEq(name, key);
called = true;
}
};
for (let p of [new Proxy(target, handler), Proxy.revocable(target, handler).proxy]) {
called = false;
key in p;
assertEq(called, true);
}
}