通过多级数组循环

Ped*_*ro 0 javascript arrays jquery loops for-loop

我有一个具有多个级别的数组,每个数组都是一个“天”,并且每天都有不同的事件(catalogo),目录是一个包含当天要提供的食物的数组。我遇到的问题是试图显示目录中的数据;

(4) [Array(7), Array(7), Array(7), Array(7)]
    0: Array(7)
      0: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      1: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      2: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      3: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      4: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      5: {fecha: 2019, id: 1553410800, mes: 3, catalogo: Array(1), …}
      6:
        fecha: 2019
        id: 1553410800
        mes: 3
        catalogo: Array(2)
          0: {id: "1553929200", tipo: "food",…}
          1: {id: "1553995800", tipo: "food" …} 
    1: (7) [{…}, {…}, {…}, {…}, {…}, {…}, {…}]
    2: (7) [{…}, {…}, {…}, {…}, {…}, {…}, {…}]
    3: (7) [{…}, {…}, {…}, {…}, {…}, {…}, {…}]
Run Code Online (Sandbox Code Playgroud)

通过这样做,我可以循环到子数组,如何循环/访问catalogo中的数据。

for ( var i = 0; i < data_array.length; i++ ) {
  var childArray = data_array[i];
  for( var j = 0; j < childArray.length; j++ ) { 
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试过了,但是没有用:

for ( var i = 0; i < data_array.length; i++ ) {
  var childArray = data_array[i];
  for( var j = 0; j < childArray.length; j++ ) { 
    var third_Array = childArray[j];
    for ( var k = 0; k < third_Array.length; k++) { 
      console.log(third_Array);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

小智 5

没有实际数据很难测试,但是尝试以下操作:

const data = [Array(7), Array(7), Array(7), Array(7)]; // your data
data.forEach(day => {
    day.forEach(element => { 
        element.catalogo.forEach(c => { console.log(c); }))
    }
})
Run Code Online (Sandbox Code Playgroud)