如何在给定参数的基础上过滤出对象数组?



我有这样一个数组:

[
{
"prod": {
"a": "b",
"mdh": "nui";
},
"prod_merchant": {
"prod_delivery": "Express",
"site": 45
}
},
{
"prod": {
"a": "b",
"mdh": "nui";
},
"prod_merchant": {
"prod_delivery": "Scheduled",
"site": 45
}
},
]

我代码:

let prod_delivery = req.param('prod_delivery');
console.log(prod_delivery) // Express
GlobalServices.isDisabledAddToCart(filteredProductList, filters)
.then(function(updatedProductList) //Under updatedProductList that whole array is coming
{
var output = updatedProductList.filter(function(x) {
return x.prod_merchant.prod_delivery == prod_delivery.prod_delivery
});
console.log("output", output)
}

输出:输出[]

基本上,我想从数组中获得基于prod_delivery的所有产品详细信息。

您可以使用filter:

var products = [{
"prod": {
"a": "b",
"mdh": "nui"
},
"prod_merchant": {
"prod_delivery": "Express",
"site": 45
}
},
{
"prod": {
"a": "b",
"mdh": "nui"
},
"prod_merchant": {
"prod_delivery": "Scheduled",
"site": 45
}
}
];
var prod_express = products.filter(product => product.prod_merchant.prod_delivery == 'Express');
console.log(prod_express);

最新更新