2013-03-21 28 views
0

我正在使用Backbone和Underscore。我的物體看起來是這樣的:使用下劃線在Javascript中使用多嵌套對象迭代

TopObject: { 
name: '', 
middleObjects: [] 
} 

MiddleObject: { 
name: '', 
bottomObjects: [] 
} 


BottomObject: { 
name:'', 
someOtherProp: '' 
} 

所以基本上,如果你有一個topObject,就會有多箇中間對象作爲它的一個屬性,而middleObjects將有多個bottomObjects作爲它的一個屬性。

我真的不知道如何在表格中顯示這些字段。所以我使用下劃線得到了這個。

var someTopObject = new TopObject(); // that has real data 
_.each(someTopObject.get('middleObjects'), function (midObjs) { 
    // do something with MidObj.name 
    // not sure how to get midObjs.bottomObjects 
}); 

現在我知道bottomObjects只能有2個項目。所以我想我可以硬編碼獲取bottomObjects中的第一個和第二個對象,但我不確定是否有更優雅的方式。謝謝!

回答

1

嵌套循環?

_.each(someTopObject.get('middleObjects'), function (midObj) { 
    _.each(midObj.get('bottomObjects'), function (bottomObj) { 
     // do stuff 
    }); 
});