Chrome で ECMAScript 6 プロキシをいじっていました (「Experimental JavaScript を有効にする」フラグが必要です)。コンソールに次のコードを貼り付けました (ここから取得):
var loggable = function(obj, logger) {
return Proxy.create({
get: function get(receiver, prop) {
logger.info('Getting ' + prop);
return obj[prop];
}
});
};
var person = { name: 'Alice', age: 22 };
person = loggable(person, {
info: function info(str) {
console.log(str);
}
});
結果は次のとおりです。
Getting splice
Getting splice
"TypeError"
splice
のプロパティperson
が 2 回アクセスされる理由と、 が取得される理由を説明できる人はいます"TypeError"
か?