比较骨干中的两个集合

jon*_*aag 2 backbone.js

我如何比较骨干中的两个集合?

我有两个集合1C包含1,2,3虽然2C包含2,4,5我想要做的是2从2C 删除因为1C已经有一个值2后通常渲染集合.

我试过这个

this.1C.each(function(model1){
  this.2C.each(function(model2){
     if(model1 === model2){
        2C.remove(model2);
     }
  });
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用.有任何想法吗?

Dee*_*ons 5

你有一个名为差异运算符http://underscorejs.org/#difference的东西.你可以使用如下所示

var x = _.difference([1,2,3,4],[1,2]); console.log(x); //gives [3,4]

在你的情况下,你可能应该这样做

var reducedCollection = _.difference(this.1C.toJSON(),this.2C.toJSON());
Run Code Online (Sandbox Code Playgroud)

现在将提供预期的结果