这可能非常简单,但是我无法弄清楚如何遍历和访问以下数组和嵌套对象的组合(我认为)中的属性:
myFilters = {
"color_Filter": [{
"name": "BLUE",
"count": 1,
"dataId": "BLUE"
},
{
"name": "Black",
"count": 5,
"dataId": "Black"
},
{
"name": "Blue",
"count": 14,
"dataId": "Blue"
}
],
"size_Filter": [{
"name": "10",
"count": 16,
"dataId": "10"
},
{
"name": "12",
"count": 16,
"dataId": "12"
}
]
}
从上面拉出name
,count
等的正确循环结构是什么?所需的输出是使用color_Filter=BLUE,Black,Blue/size_Filter=10,12
我尝试了几种不同的方法,但到目前为止都没有成功。
答案 0 :(得分:2)
您可以map
对象的entries并为每个键创建一个字符串。使用name
从值数组中获取map
。然后join
用/
const myFilters = {color_Filter:[{name:"BLUE",count:1,dataId:"BLUE"},{name:"Black",count:5,dataId:"Black"},{name:"Blue",count:14,dataId:"Blue"}],size_Filter:[{name:"10",count:16,dataId:"10"},{name:"12",count:16,dataId:"12"}]};
const output = Object.entries(myFilters)
.map(([k,arr]) => `${k}=${arr.map(a => a.name)}`)
.join("/")
console.log(output)