从json结构中的所有子级读取Javascript
我有一个JSON结构,如下所示:从json结构中的所有子级读取Javascript,javascript,Javascript,我有一个JSON结构,如下所示: "items": { "Part1": { "src": "xxxx" }, "Part2": { "src": "yyyy" }, //... } 我想把所有的src字符串提取到一个数组中,不管它属于哪个部分。所以我试着浏览不同的部分。我应该如何做到这一点 试试这个 const项={ 第1部分:{ src:“xxxx” }, 第2部分:{ src:“yyyy” } }; 常量列表=[]; 用于(常量输
"items": {
"Part1": {
"src": "xxxx"
},
"Part2": {
"src": "yyyy"
},
//...
}
我想把所有的src字符串提取到一个数组中,不管它属于哪个部分。所以我试着浏览不同的部分。我应该如何做到这一点 试试这个
const项={
第1部分:{
src:“xxxx”
},
第2部分:{
src:“yyyy”
}
};
常量列表=[];
用于(常量输入项){
list.push(项[key].src);
}
您可以这样做
const项={
“第一部分”:{
“src”:“xxxx”
},
“第二部分”:{
“src”:“yyyy”
}
}
const allSrcs=Object.values(items.map)(i=>i.src)
console.log(allSrcs)
对于通过json/object的循环,您可以使用object.keys
或object.values
。比如你的情况,
let data = {
"items": {
"Part1": {
"src": "xxxx"
},
"Part2": {
"src": "yyyy"
},
//...
}
};
let parts = Object.values(data['items']); // retrieve all parts in items
let srcs = parts.map( p => p.src ); // src array for all parts
console.log(srcs);
您可以尝试使用以下代码:
const jsonData={
“项目”:{
“第一部分”:{
“src”:“xxxx”
},
“第二部分”:{
“src”:“yyyy”
},
}
};
const getAllSrcStringToArr=Object.entries(jsonData.items).map(([key,val])=>val.src)
console.log(GetAllSrcStringToArr)
要将所有src放入一个数组,可以使用以下解决方案:
const items = {
"Part1": {
"src": "xxxx"
},
"Part2": {
"src": "yyyy"
}
};
const results = Object.keys(items).map(item => items[item].src);
console.log(results);
这是:
你为解决这个问题做了哪些努力?@DanielA.White事实上,我目前正在对这个问题进行讨论。我正在考虑使用findAllChildren,但它似乎适用于数组,而不是这种结构。这就是为什么我觉得这有点困惑
let vv = Object.values({
"Part1": {"src": "xxxx"},
"Part2": {"src": "yyyy"}
}).map(s => s.src);
console.log(vv);