递归而不是for循环

杰里米·塞古

数据:

missionIds : ['ID1', 'ID2'...] is an Array of String
this.tabDataManager : [{JOBOPENINGID: "ID1"}, {JOBOPENINGID: "ID2"}...] is an Array of Objects

经典的Loop正在运行,我得到了预期的结果:

for (var i=0; i < this.missionIds.length; i++ ){
      for(var j=0; j< this.tabDataManager.length; j++){
        if(this.missionIds[i] === this.tabDataManager[j].JOBOPENINGID){
          console.log('true');
        }//END if
      }//END for
    }//END for

递归版本不起作用,并且我有一个空数组作为结果:

this.tabDataManager = this.tabDataManager.filter(ref => ref.JOBOPENINGID === this.missionIds.map(def => def))

你有一个主意吗?

妮娜·斯科茨(Nina Scholz)

您可以接受Array#includes想要的价值。

this.tabDataManager = this.tabDataManager.filter(ref => 
    this.missionIds.includes(ref.JOBOPENINGID);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章