亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

循環遍歷多維數組以迭代javascript中的每個項目

循環遍歷多維數組以迭代javascript中的每個項目

慕尼黑5688855 2022-05-26 10:45:24
我怎樣才能循環遍歷每個項目console.log, 我只想迭代循環方式 這是數組let array = [    [1,2,3],    [4,5,6],    [7,8,9],    [[10,11,12],13,14],    [[15,16,16],[17,18,[19,20]]]];
查看完整描述

3 回答

?
LEATH

TA貢獻1936條經驗 獲得超7個贊

獲取一個平面數組并迭代輸出。


let array = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [[10, 11, 12], 13, 14], [[15, 16, 16], [17, 18, [19, 20]]]];


array

    .flat(Infinity)

    .forEach(v => console.log(v));


帶有遞歸回調的更經典的方法。


const show = v => {

        if (Array.isArray(v)) v.forEach(show);

        else console.log(v);

    };


let array = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [[10, 11, 12], 13, 14], [[15, 16, 16], [17, 18, [19, 20]]]];


array.forEach(show);


查看完整回答
反對 回復 2022-05-26
?
森林海

TA貢獻2011條經驗 獲得超2個贊

你可以試試這樣的東西嗎?


此函數應控制臺記錄數組和所有子數組中的每個項目。


// using Array.forEach

const recursiveLoop1 = (elem) => {

  if (Array.isArray(elem)) {

    elem.forEach((innerElem) => {

      recursiveLoop1(innerElem)

    })

  } else {

    console.log(elem)

  }

}


// using classic for-loop

const recursiveLoop2 = (elem) => {

  if (Array.isArray(elem)) {

    for (let i = 0; i < elem.length; i++) {

      recursiveLoop2(elem[i])

    }

  } else {

    console.log(elem)

  }

}


let array = [

  [1,2,3],

  [4,5,6],

  [7,8,9],

  [[10,11,12],13,14],

  [[15,16,16],[17,18,[19,20]]]

];


recursiveLoop1(array);

recursiveLoop2(array);


查看完整回答
反對 回復 2022-05-26
?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

你需要一個嵌套循環。JavaScript 有不同的方法來做到這一點。以下是函數式編程的示例:


array.forEach(function (outer) {

    outer.forEach(function (inner) {

        console.log(inner)

    })

});

由于您有一個深度嵌套的數組,您可能還想先將其展平。


查看完整回答
反對 回復 2022-05-26
  • 3 回答
  • 0 關注
  • 116 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號