Javascript 获取名称未知的嵌套JSON的值

Javascript 获取名称未知的嵌套JSON的值,javascript,json,destructuring,Javascript,Json,Destructuring,我有一个嵌套很深的JSON对象,名称为任意值。我不知道未来的价值。下面是一个简化的例子。我似乎想不出一个方法来获得我需要的价值 { "bigJSON":{ "5":{ "3":[ { "week":{ "name":"John", "length":25 } },

我有一个嵌套很深的JSON对象,名称为任意值。我不知道未来的价值。下面是一个简化的例子。我似乎想不出一个方法来获得我需要的价值

{
   "bigJSON":{
      "5":{
         "3":[
            {
               "week":{
                  "name":"John",
                  "length":25
               }
            },
            {
               "week":{
                  "name":"John1",
                  "length":95
               }
            }
         ]
      },
      "6":{
         "2":[
            {
               "week":{
                  "name":"John3",
                  "length":45
               }
            },
            {
               "week":{
                  "name":"Merlin",
                  "length":25
               }
            }
         ]
      }
   }
}

我需要从
bigJSON['5']['3'],bigJSON['6']['2']
等获取数组,但我无法提前知道
5,3,6,2
等的值。将提供帮助。

您可以使用
for…in
循环来迭代对象的属性。根据您的数据结构,您似乎需要两个级别的迭代

var data={“bigJSON”:{“5”:{“3”:[{“周”:{“名”:“约翰”,“长度”:25}},{“周”:{“名”:“约翰”,“长度”:95}}}},},“6”:{“2”:[{“周”:{“名”:“约翰”,“长度”:45},{“周”:{“名”:“梅林”,“长度”:25}}}}}
var getWeeks=函数(数据){
var weeks=[]
for(data.bigJSON中的变量level1){
for(data.bigJSON[level1]中的变量level2){
weeks=weeks.concat(data.bigJSON[level1][level2])
}
}
返回周;
}

console.log(getWeeks(data))
使用
Object.keys
或iterate调用您想要的脚本时您知道什么?@mplungjan我只知道json的名称,它包含带有week对象的数组我不明白您知道什么和不知道什么。输入是什么,预期输出是什么?getMyData(?,?)看起来如何这工作得很好,谢谢@jstnpwl