2012-10-05 96 views
0

我必須有對象的一些誤解和JavaScript中的原型模式,但我不明白爲什麼下面的代碼不工作:爲什麼JavaScript對象的這個擴展沒有工作?

Object.prototype.log = function() { 
    console.log(this); 
    return this; 
} 

var test = { 'foo' : 'bar'}; 
test.log(); 

爲什麼這個拋出object has no method 'log'錯誤?

+0

什麼瀏覽器?它適用於我在鉻:http://jsfiddle.net/lbstr/rcG2R/ – lbstr

+0

也適用於IE7,你能告訴我們關於你的環境的其他事情嗎? – David

+0

適用於Firefox 15中的我。 – ruakh

回答

1

這應該按照規範工作。我把你的代碼按原樣粘貼到IE10中,並且工作正常。

1

嘗試登錄日誌功能內的值:

Object.prototype.log =函數(){的console.log(this.foo);};

相關問題