Javascript 主干-删除集合中的最后一个模型,但只能通过筛选器删除

Javascript 主干-删除集合中的最后一个模型,但只能通过筛选器删除,javascript,backbone.js,underscore.js,Javascript,Backbone.js,Underscore.js,删除最后一个非常简单,但理想情况下我想做的是(伪解决方案): 并从集合中删除最后一个匹配的模型。可能吗 编辑: 与此相关- this.keysCollection.pop({ type: 'foo' }); Pop实际上只是获取最后一个元素,然后从 因为这种情况下,您可以使用它来获取与过滤器匹配的模型,然后将结果中的最后一个模型传递给您自己 pop: function(options) { var model = this.at(this.length - 1);

删除最后一个非常简单,但理想情况下我想做的是(伪解决方案):

并从集合中删除最后一个匹配的模型。可能吗

编辑:

与此相关-

this.keysCollection.pop({ type: 'foo' });

Pop实际上只是获取最后一个元素,然后从

因为这种情况下,您可以使用它来获取与过滤器匹配的模型,然后将结果中的最后一个模型传递给您自己

  pop: function(options) {
      var model = this.at(this.length - 1);
      this.remove(model, options);
      return model;
    },

您可以使用获取模型,然后将其传递给@Jack Sure,但这是否一定会尊重pop删除最后一个模型的功能?pop删除,仅针对最后一个元素。由于您希望获得匹配的最后一个元素,因此最好使用
where
然后使用最后一个元素。
const models = this.where({ type: 'foo' });
const model = models[models.length - 1];
this.remove(model);
  pop: function(options) {
      var model = this.at(this.length - 1);
      this.remove(model, options);
      return model;
    },
var matchingModels = this.where({type: 'foo'});
this.remove(matchingModels[matchingModels.length - 1]);