この単純なコードを実行しています:
var handler = {
get(target, prop, proxy) {
console.log('get', prop);
return target[prop];
}
};
var proxy = new Proxy({}, handler);
console.log('the proxy is', proxy);
Firefox [nightly 46] では、期待どおりの出力が得られます。
the proxy is Object { }
ただし、Google Chrome [canary 49] では、奇妙なことがログに記録されます。
the proxy is undefined {}
get splice
get splice
get __proto__
ここで何が起こっているのか分かりますか?