Javascript 主干,其中函数位于作为对象的属性上

Javascript 主干,其中函数位于作为对象的属性上,javascript,backbone.js,underscore.js,Javascript,Backbone.js,Underscore.js,我有这样一个主干模型: Name: Test1 size: {Key: "M" Value: "Med"} 现在,我正在尝试获取键M的总数。下面的函数不起作用: getTotals: function(property) { return this.where({ size: { Key: property }}).length; } 我这样称呼它: collection.getTotals("M") 有没有办法用主干where函数做到这一点?我不相信有办

我有这样一个主干模型:

    Name: Test1
 size: {Key: "M" Value: "Med"}
现在,我正在尝试获取键M的总数。下面的函数不起作用:

getTotals: function(property) {
        return this.where({ size: { Key: property }}).length;
    }
我这样称呼它:

collection.getTotals("M")

有没有办法用主干where函数做到这一点?

我不相信有办法用主干的
where
方法做到这一点。查看文档(),并考虑它所说的:“对于简单的过滤器案例有用”(强调添加)。 您的情况并不简单,因为
size
的值是一个对象,但我们仍然使用过滤器:

collection.filter(function(model) {
    return model.get('size').Key == 'M'
});

您希望
length
从何而来?this.where()返回对象的集合。它将返回集合的长度。