2017-07-15 38 views
-2

我需要一個自定義對象的工作人員自定義對象裏面,所以我有這樣的staff.js:我可以將自定義數據類型的數組在javascript

function Staff(name, shouldBeRemoved, officeName, dateHired) { 
     this.name = name; 
     this.shouldBeRemoved = shouldBeRemoved; 
     this.officeName = officeName; 
     this.dateHired = dateHired; 
    } 

我也有一個自定義對象office.js中的辦公室:

function Office(name, shouldBeRemoved, staffMembers) { 
     this.name = name; 
     this.shouldBeRemoved = shouldBeRemoved; 
     this.staffMembers = staffMembers; 
    } 

我想使用staffMembers屬性作爲Office內部Staff對象的數組。

但是,當我試圖推動新的員工對象到staffMembers陣列在我的辦公室的對象,什麼都不會發生:

staff = new Staff(name, false, officeSelected, d.toDateString()); 
     for (i=0; i<officeArray.length; i++) { 
      if (officeArray[i].name == officeSelected) { 
       officeArray[i].staffMembers.push(staff); 
      } 
     } 
+0

你是什麼意思, 「什麼也沒發生」? – Pointy

+0

行'officeArray [i] .staffMembers.push(staff);'不運行。之後沒有任何東西在運行。如果我嘗試在此之後打開警報窗口,它將不會打開。 –

+0

你有js小提琴嗎?你的遊戲機說什麼?您是否遇到錯誤或者員工是否爲空? – JonLuca

回答

0

我的建議是開始使用打字稿,原因是該數據類型和類有一個清晰的畫面。

staff = new Staff(name, false, officeSelected, d.toDateString()); 
    for (i=0; i<officeArray.length; i++) { 
     if (officeArray[i].name == officeSelected) { 
      officeArray[i].staffMembers.push(staff); 
     } 
    } 

這裏ü應檢查officeArray [I]。名稱=== staff.officeSelected

相關問題