Javascript 从与模型ID列表匹配的主干集合中提取多个模型

Javascript 从与模型ID列表匹配的主干集合中提取多个模型,javascript,backbone.js,collections,Javascript,Backbone.js,Collections,我有一批设施。与集合关联的模型是一个设施,FacilityCode作为模型Id属性 现在我有了数组中FacilityCode的列表。是否有任何简单的方法可以创建一个集合,其中包含此阵列中具有匹配FacilityCode的所有模型 我可以使用collection.get(id)函数逐个获取模型。但是我正在寻找一个函数,我可以向它传递一组ID,这些ID将返回一组匹配的模型。对于这类事情很有用。如果愿意,可以在集合对象的定义中很好地包装它: Facilities = Backbone.Collecti

我有一批设施。与集合关联的模型是一个设施,FacilityCode作为模型Id属性

现在我有了数组中FacilityCode的列表。是否有任何简单的方法可以创建一个集合,其中包含此阵列中具有匹配FacilityCode的所有模型

我可以使用collection.get(id)函数逐个获取模型。但是我正在寻找一个函数,我可以向它传递一组ID,这些ID将返回一组匹配的模型。

对于这类事情很有用。如果愿意,可以在集合对象的定义中很好地包装它:

Facilities = Backbone.Collection.extend({

    // ...

    getAllForCodes: function(facilityCodes) {
        var models = this.filter(function(facility) {
            return (_.indexOf(facilityCodes, facility.get('FacilityCode')) !== -1);
        }); 
        return new Facilities(models);
    }

});
…并使用它获取一系列设施代码的所有设施:

var myFacilities = facilities.getAllForCodes([1, 2, 3]);