{
"hoodie": {
"body": {
"default": {
"colors": {
"style": {
"solid": {
"colors": {
"body": "body"
}
}
}
}
},
"additional": {
"logo": {
"image": ""
},
"chest-pocket": {
"colors": {
"chest-pocket": "chest-pocket"
}
},
"tag": {
"image": ""
}
}
},
"sleeves": {
"default": {
"colors": {
"style": {
"solid": {
"colors": {
"sleeve": "sleeve"
}
}
}
}
},
"additional": {
"cuffs": {
"colors": {
"cuffs": "cuffs"
}
}
}
}
}
}
我需要的格式是提取附加 key 。在这种情况下,连帽衫 key 包含主体和袖子作为其 key ,另外还包含与附加 key 相对应的不同 key 。我已经给出了需要解析的Object以及解析后得到的数据。
{
"body": ["logo", "chest-pocket", "tag"],
"sleeves": ["cuffs"]
}
任何人都可以分享链接,它可能会帮助我玩对象。 提前致谢。
最佳答案
您可以使用array.reduce在 Object.keys 的帮助下获得所需的输出
请检查下面的代码片段。
const input = {
"hoodie": {
"body": {
"default": {
"colors": {
"style": {
"solid": {
"colors": {
"body": "body"
}
}
}
}
},
"additional": {
"logo": {
"image": ""
},
"chest-pocket": {
"colors": {
"chest-pocket": "chest-pocket"
}
},
"tag": {
"image": ""
}
}
},
"sleeves": {
"default": {
"colors": {
"style": {
"solid": {
"colors": {
"sleeve": "sleeve"
}
}
}
}
},
"additional": {
"cuffs": {
"colors": {
"cuffs": "cuffs"
}
}
}
}
}
}
let output = Object.keys(input.hoodie).reduce((acc, curr) => {
acc[curr] = Object.keys(input.hoodie[curr].additional)
return acc
}, {})
console.log(output)
关于javascript - 从 JSON 对象中提取深层数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61799445/