0

これは機能しません (OSX の chrome 39 では):

var x = new Image();
Object.observe(x, function(){console.log('i never run');})
x.src = 'http://www.foo.com';
console.log('has been set: ' + x.src);

しかし、これは:

var x = new function nonNative(){};
Object.observe(x, function(){console.log('i will run');})
x.src = 'http://www.foo.com';

そして、これもそうです:

var x = new XMLHttpRequest();
Object.observe(x, function(){console.log('so will i');})
x.src = 'http://www.foo.com';

そのため、この問題は Image がネイティブ コンストラクターであることに直接関係していません (XMLHttpRequest が期待どおりに動作するため) - img.src の設定に固有のもののようです。src を設定するとメソッドのように動作するためだと推測できます (リクエストが行われるという点で)。プロパティのように呼び出すことができるメソッドのようなものは JS にありますか?

そうでないと仮定すると、これが Object.observe の望ましい動作であるかどうかを知っている/推測できる人はいますか ( mdn docsには何も表示されませんでした)、そうでない場合は、バグとして報告するのに最適な場所はどこでしょうか?

4

2 に答える 2