我有一个如下所示的数组,我想进行通配符搜索并检索相应的值。这不会给我任何结果,如果有更好的方法可以帮助我。我在我的nodejs应用程序中使用lodash实用程序。
var allmCar = [
{
"_id": ObjectId("5833527e25bf78ac0f4ca30e"),
"type": "mCar",
"value": "ABDC",
"__v": 0
},
{
"_id": ObjectId("5833527e25bf78ac0f4ca30e"),
"type": "mCar",
"value": "XYZ ABD",
"__v": 0
},
{
"_id": ObjectId("5833527e25bf78ac0f4ca30e"),
"type": "mCar",
"value": "FGHJ",
"__v": 0
}
]
_.find(allmCar, {
value: {
$regex: 'XYZ'
}
})
我最终最终使用_.includes如下
_.each(allmCar,function(car){
if(_.includes('XYZ', car.value)===true)
return car;
})
答案 0 :(得分:1)
您可以对传递给_.find
的函数执行相同操作,例如
_.find(allmCar, function(mCar) {
return /XYZ/.test(mCar.value);
});
或使用箭头功能
_.find(allmCar, (mCar) => /XYZ/.test(mCar.value));
这将应用传递给集合的所有项目的函数,如果项目返回true
,则将返回该项目。