Javascript REACT-使用多个数组遍历Json对象
我当前正在从以下示例URL获取json对象: 我的目的是通过每个数组(“区域”)进行迭代,并生成一个切换案例,该案例将根据Javascript REACT-使用多个数组遍历Json对象,javascript,json,reactjs,react-native,Javascript,Json,Reactjs,React Native,我当前正在从以下示例URL获取json对象: 我的目的是通过每个数组(“区域”)进行迭代,并生成一个切换案例,该案例将根据类型字段调用不同的方法 我试着看另一个类似的案例 但是我仍然在努力通过json对象正确地进行迭代,我没有正确地做什么 以下是迭代代码: interpretJson(jsonObj){ if(jsonObj){ var arr = []; Object.keys(jsonObj).map((zone, index) => {
类型字段调用不同的方法
我试着看另一个类似的案例
但是我仍然在努力通过json对象正确地进行迭代,我没有正确地做什么
以下是迭代代码:
interpretJson(jsonObj){
if(jsonObj){
var arr = [];
Object.keys(jsonObj).map((zone, index) => {
arr.push(jsonObj[zone]);
})
return(
<div>
<p> interpretJson output: </p>
<ul>
{arr.map(item => {
item.type
})
}
</ul>
</div>
)
}
}
解释JSON(jsonObj){
if(jsonObj){
var-arr=[];
Object.keys(jsonObj).map((区域,索引)=>{
arr.push(jsonObj[区域]);
})
返回(
解释JSON输出:
{arr.map(项=>{
item.type
})
}
)
}
}
显示输出只是为了查看它是否被正确迭代,因此我可以继续切换,但显然有些地方不正确。您需要循环区域对象键,然后进入zone1和zone2数组以收集不同的类型,然后删除重复项
var jsonObj={
“区域”:{
“1区”:[
{“类型”:“文本”,“url”:http://pastebin.com/raw/1U5vhVzH,“displaytime”:“15”},
{“类型”:“图像”,“url”:http://i.imgur.com/FuD18KJ.jpg,“displaytime”:“10”},
{“类型”:“视频”,“url”:http://techslides.com/demos/sample-videos/small.mp4" }
],
“2区”:[
{“类型”:“文本”,“url”:http://pastebin.com/raw/1U5vhVzH,“displaytime”:“16”},
{“类型”:“图像”,“url”:http://i.imgur.com/FuD18KJ.jpg,“displaytime”:“11”},
{“类型”:“视频”,“url”:http://techslides.com/demos/sample-videos/small.mp4" }
]
}
}
var-arr=[];
Object.keys(jsonObj.zones).forEach((zone,index)=>{
jsonObj.zones[zone].forEach((obj,idx)=>{
arr.push(对象类型)
})
})
arr=arr.filter((x,i,a)=>a.indexOf(x)==i)//删除重复条目
控制台日志(arr)代码>因为您没有返回地图正文中的任何内容,所以请使用以下命令:{arr.map(item=>item.type )}
尝试了该操作,并且{item.type} 但它仍然没有打印类型…这完全正确,先生。所以我的问题是,我用jsonObj[zone]一次传递一组内部对象,而不是一个接一个地传递?很高兴它对您有所帮助