我的响应代码如下:
[
{
"id": 364,
"siteName": "FX21 - PortA",
},
{
"id": 364,
"siteName": "FX21 - PortB",
},
{
"id": 370,
"siteName": "FX05 - ER",
},
在邮递员中,我只想在id = 364的情况下使用所有siteName值填充一个数组变量。所以我期望的数组看起来像[FX21 - PortA, FX21 - PortB]
我尝试了以下操作,但这只会返回第一个siteName值:
var requiredId = pm.response.json().find(function(element){
if (element.id == "364"){
return element;
}
});
答案 0 :(得分:0)
Array.filter
的组合来筛选值为id
的{{1}}。364
将其映射到仅包含Array.map
值的数组。
siteName
或者const response = [
{
"id": 364,
"siteName": "FX21 - PortA",
},
{
"id": 364,
"siteName": "FX21 - PortB",
},
{
"id": 370,
"siteName": "FX05 - ER",
}
]
function getSiteNameById(idFilter){
return response.filter(({id}) => id === idFilter).map(({siteName}) => siteName);
}
console.log(getSiteNameById(364));
一次完成,您可以在其中检查ID,然后将元素累积到最终数组中:
Array.reduce