2010-09-14 48 views
1

嗨的工作我目前正試圖獲得的代碼下面的代碼段的工作:無法獲取JavaScript數組中OOP風格

function Entry() { 
    var pauses = new Array(); 
} 

Entry.prototype = { 
    AddElement: function(aParameter) { 
     this.pauses.push(aParameter); 
    } 
} 

不幸的代碼失敗,並在Safari瀏覽器下面的錯誤,如果我試圖調用addElement方法( 「測試」);

TypeError:表達式結果'this.pauses'[undefined]不是一個對象。有人知道爲什麼嗎?

回答

1

在您的代碼中,pausesEntry()函數中的局部變量,而不是由它構造的對象上的成員。

您想用this.pauses = ...替換var pauses = ...

1

變化

var pauses = new Array(); 

this.pauses = new Array(); 

,或者更好

this.pauses = []; 
+0

什麼新的Array()和[]之間的差異? – 2010-09-15 03:16:41