Brandon Benvie (2013-08-02T20:21:23.000Z)
domenic at domenicdenicola.com (2013-08-02T20:51:09.277Z)
The problem is methods acting on a Proxy `this` value could leak the Symbol: ```js module "foo" { const secret = Symbol(); export default class Foo { constructor(){ this[secret] = Math.random(); } increment(){ this[secret]++; } } } module "bar" { import Foo from "foo"; var secret; new Proxy(new Foo(), { get(target, key, receiver){ if (typeof key === 'symbol') { secret = key; } return Reflect.get(target, key, receiver); } }).increment(); console.log(secret); // should be the Symbol here } ```