从json结构中的所有子级读取Javascript

从json结构中的所有子级读取Javascript,javascript,Javascript,我有一个JSON结构,如下所示: "items": { "Part1": { "src": "xxxx" }, "Part2": { "src": "yyyy" }, //... } 我想把所有的src字符串提取到一个数组中,不管它属于哪个部分。所以我试着浏览不同的部分。我应该如何做到这一点 试试这个 const项={ 第1部分:{ src:“xxxx” }, 第2部分:{ src:“yyyy” } }; 常量列表=[]; 用于(常量输

我有一个JSON结构,如下所示:

"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);