我想在javascript中爲對象類添加一個名爲size的新方法。如何在JavaScript中向根類對象添加新方法?
var obj = {here: {is: "an"}, object: 2};
object.prototype.size = function() {
var obj=this;
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
console.log(obj.size());
的obj是typeof運算對象,我添加了新的功能對象object.prototype.size =功能(){}
但是當我運行它,火狐給我的錯誤:
ReferenceError: object is not defined (line 10)
當我改變了方法,你可以查看這裏:(http://jsbin.com/cisasewo/1/edit代碼)
:
Object.prototype.size = function() {
var obj=this;
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
當它調用時,它只是給我的函數不是答案函數的大小? 爲什麼?如何將大小函數添加到JavaScript中的對象類?
你是如何調用第2個功能? – danronmoon
你不會把它稱爲一個函數。你需要()後面的大小 – mclaassen
請注意,你不應該這樣做,[或者至少做得正確](http://stackoverflow.com/a/13296897/1048572) – Bergi