playersCollection.each(function(player) {
// how do I determine the model with the largest attribute
player.get('points') // this is the attribute
//Not sure what to write to filter through all the models with this attribute
//Then return the object that is the largest?
});
假设有三个模型,每个模型都有一个点属性6,10,21我如何过滤它们并返回一个21(集合中最大数字)。
很简单,但我不确定使用哪种方法,以及如何在此上下文中使用http://backbonejs.org/
对大多数人来说应该很简单吗?
答案 0 :(得分:4)
下划线的max
方法就是解决方案。
由于Backbone Collection合并了一些Underscore方法,包括max
,你可以直接在Collection实例上使用它。
playersCollection.max(function(player){
return player.get('points');
});
// => {name: 'Joe', points: 21};
请参阅此处的演示:http://jsbin.com/ACAcALak/2/edit?html,js,console
参考: