我可以使用Undercore'其中'带有'或'

Can I use Underscore 'where' with an 'or'?

本文关键字:带有 其中 可以使 我可以 Undercore      更新时间:2023-09-26

我想要的是这样的东西(myArray是一个对象数组):

myArray = _.where(myArray, {Flag: ""} or {Flag: exists: {false}});

换句话说,返回对象的myArray,这些对象要么具有空字符串的Flag字段值,要么不存在Flag字段。

在undercore.js中有办法做到这一点吗?

简短回答:无

但你可以使用过滤器:

_.filter(myArray, function(x) {
  return x.Flag === '' || _.has(x, 'Flag');
});

可以简化为:

_.reject(myArray, _.property('Flag'));

如果你不介意任何其他虚假的价值观。