2013-08-26 75 views
0

我如何在集合的模型中找到特定屬性的總數?如何查找集合中特定模型屬性的總數?

var myModel = Backbone.Model.extend({ }); 

var myCollection = Backbone.Collection.extend({ 
    model : myModel, 
}); 

每當模型中有值變化時,我必須顯示所有值的總和。

例如,我在集合中有10個模型,在模型中有一個屬性amount。每當物業獲得新的價值時,我應該顯示總計amount

我使用的代碼:

debitAmountTotal: function(){ 
    return this.reduce(function(memo, value) { 
     return memo + value.get("amountTcy"); 
    }, 0); 
} 

但這串接的值:如果第一個值,並在第二個值是8,那麼結果是88而不是16

+0

'+'串接表明您'amountTcy'值實際上是字符串,你應該將它們轉換爲數字他們進入模型前。 –

回答

2
  1. 分配默認每個模型中的值爲0。
  2. changed事件綁定到集合的模型,並將其添加到集合中。
  3. 對於changed事件,請使用reduce方法underscore.js迭代集合並查找總量。
+1

集合的「」添加「和」刪除「也可能是有趣的。 –

+0

@ muistooshort謝謝,這將有所幫助,如果你能提供一些代碼片段 –

+0

@DhruvPathak謝謝,這將是有益的,如果你可以提供一些代碼片段 –

0
debitAmountTotal: function(){ 
    return this.reduce(function(memo, value) { 
     return memo + Number(value.get("amountTcy")); 
    }, 0); 
} 
相關問題