在第二个数组中找不到javascript筛选器元素



已解决:需要为每个筛选器显式返回语句。我认为每个过滤器中的单个布尔值就足够清晰了通过@adiga

我想在一个数组(dcm(中查找在第二个数组(vari(中找不到的元素我只想匹配两个元素,vp(字符串类型(和vd(日期类型(。我已经确保dcm中有一些行符合条件,但我没有得到结果

我把代码编错了吗?有更好的方法吗?

var dcmm = dcm.filter(r=>{
vari.filter(rv=>{
rv[vp]+rv[vd] == r[dp]+r[dd]
}).length == 0
});

ps。抱歉,对所有长期使用可变名称的支持者并不感到抱歉。以及constnot-var的支持者。pps。这是谷歌应用程序的脚本而不是javascript,但我认为这个想法是一样的。

以防万一,正如@adiga所说,如果不使用{},则不需要return语句。

这很可能会很好:

var dcmm = dcm.filter( r => vari.filter( rv => (rv[vp]+rv[vd] == r[dp]+r[dd]) ).length == 0 );

最新更新