我正在从我的javascript数组“ lstObj”中提取信息,如下所示:
[
{
"DealerId": "1",
"Type": "Apple,Orange"
},
{
"DealerId": "2",
"Type": "Mango"
},
{
"DealerId": "3",
"Type": "Mango"
}
]
我想检查是否有一个类型为Mango且DealerID不为2的商品。 在C#linq中,我将执行以下操作:
if(lstObj.Any(x=>x.Type.Split(',').Contains("Mango") && x.DealerID != 2))
{
//Do something
}
如何使用javascript实现相同的功能?
答案 0 :(得分:1)
这应该做。如果没有项目,它将返回未定义,否则将返回项目。
let result = lstObj.filter(dealer => {return dealer.Type.split(',').includes('Mango') && dealer.DealerId != 2});
let lstObj = [
{
"DealerId": "1",
"Type": "Apple,Orange"
},
{
"DealerId": "2",
"Type": "Mango"
},
{
"DealerId": "3",
"Type": "Mango"
}
]
let result = lstObj.filter(dealer => {return dealer.Type.split(',').includes('Mango') && dealer.DealerId != 2})
console.log(result)
答案 1 :(得分:1)
您可以使用some
:
var result= array.some(function (item) {
return item.Type.split(",").inlcudes("Mango") && item.DealerID != 2;
});