Javascript 如何转换json格式?
第一种是来自源代码的精确数据格式,希望转换为第二种格式。我无法更改源代码,因此希望更改为所需格式 我已经看过很多与我的问题相关的帖子,但是我没有找到一个合适的解决方案 JSON格式Javascript 如何转换json格式?,javascript,json,Javascript,Json,第一种是来自源代码的精确数据格式,希望转换为第二种格式。我无法更改源代码,因此希望更改为所需格式 我已经看过很多与我的问题相关的帖子,但是我没有找到一个合适的解决方案 JSON格式 "data": [ { "title": "Dog", "channel_id": 1, "channel_image": "some channel
"data": [
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url",
"playStationID": 1,
"playStationGener": "Dog0",
"playStationInfo": "blah blah",
"playStationName": "ABC1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url",
"playStationID": 2,
"playStationGener": "Dog1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url",
"playStationID": 4,
"playStationGener": "Cat0",
"playStationInfo": "blah blah",
"playStationName": "XYZ1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url",
"playStationID": 4,
"playStationGener": "Cat1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
[
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url"
"data": [
{
"playStationID": 1,
"playStationGener": "Dog0",
"playStationInfo": "blah blah",
"playStationName": "ABC1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"playStationID": 2,
"playStationGener": "Dog1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
},{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url"
"data": [
{
"playStationID": 4,
"playStationGener": "Cat0",
"playStationInfo": "blah blah",
"playStationName": "XYZ1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"playStationID": 4,
"playStationGener": "Cat1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
}
]
此格式中需要
"data": [
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url",
"playStationID": 1,
"playStationGener": "Dog0",
"playStationInfo": "blah blah",
"playStationName": "ABC1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url",
"playStationID": 2,
"playStationGener": "Dog1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url",
"playStationID": 4,
"playStationGener": "Cat0",
"playStationInfo": "blah blah",
"playStationName": "XYZ1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url",
"playStationID": 4,
"playStationGener": "Cat1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
[
{
"title": "Dog",
"channel_id": 1,
"channel_image": "some channel image url"
"data": [
{
"playStationID": 1,
"playStationGener": "Dog0",
"playStationInfo": "blah blah",
"playStationName": "ABC1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"playStationID": 2,
"playStationGener": "Dog1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
},{
"title": "Cat",
"channel_id": 2,
"channel_image": "some channel image url"
"data": [
{
"playStationID": 4,
"playStationGener": "Cat0",
"playStationInfo": "blah blah",
"playStationName": "XYZ1",
"playStationImage": "some image url",
"isFavorite": "NO"
},
{
"playStationID": 4,
"playStationGener": "Cat1",
"playStationInfo": "blah blah",
"playStationName": "ABC2",
"playStationImage": "some image url",
"isFavorite": "NO"
}
]
}
]
请帮忙!!
提前感谢。您可以使用、
const obj={
数据:[{
标题:“狗”,
频道编号:1,
频道图片:“某频道图片url”,
playStationID:1,
playStationGener:“Dog0”,
playStationInfo:“诸如此类”,
playStationName:“ABC1”,
playStationImage:“一些图像url”,
我最喜欢:“不”,
},
{
标题:“狗”,
频道编号:1,
频道图片:“某频道图片url”,
playStationID:2,
playStationGener:“Dog1”,
playStationInfo:“诸如此类”,
playStationName:“ABC2”,
playStationImage:“一些图像url”,
我最喜欢:“不”,
},
{
标题:“猫”,
频道编号:2,
频道图片:“某频道图片url”,
playStationID:4,
playStationGener:“Cat0”,
playStationInfo:“诸如此类”,
playStationName:“XYZ1”,
playStationImage:“一些图像url”,
我最喜欢:“不”,
},
{
标题:“猫”,
频道编号:2,
频道图片:“某频道图片url”,
playStationID:4,
playStationGener:“Cat1”,
playStationInfo:“诸如此类”,
playStationName:“ABC2”,
playStationImage:“一些图像url”,
我最喜欢:“不”,
},
],
};
const resObj=对象数据减少((acc,curr)=>{
常数{
标题
频道id,
频道图像,
休息
}=货币;
如果(!acc[标题]){
acc[标题]={
标题
频道id,
频道图像,
数据:[其余],
};
}否则{
acc[标题][“数据”]。推送(休息);
}
返回acc;
}, {});
const result=Object.keys(resObj.map)((x)=>resObj[x]);
控制台日志(结果)代码>请显示您尝试过的内容。这听起来类似于发布的问题。在最坏的情况下,您可能只需要实现自己的转换例程。您能分享您迄今为止的尝试吗?StackOverflow不是一个免费的代码编写服务,它希望您首先尝试解决自己的问题。请更新您的问题,以显示您已经尝试过的内容,并显示您在某个问题中面临的具体问题。有关更多信息,请参阅,并使用。更好的是,您可以在解构中使用…rest
,而不是提取它们并将它们添加到新对象中。我将在@FredStark执行此操作。谢谢你的建议