色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

javascript - js 多維數組的問題

瀏覽:186日期:2023-04-06 16:04:59

問題描述

[ {'id': 1,'name': 'sys','title': '系統設置','type': 1,'status': 1,'condition': '','pid': 0,'level': 0,'sort': 7,'icon': 'fa-gear','children': [ {'id': 11,'name': 'conf/lst','title': '配置列表','type': 1,'status': 1,'condition': '','pid': 1,'level': 1,'sort': 50,'icon': null,'children': [ {'id': 12,'name': 'conf/add','title': '添加配置','type': 1,'status': 1,'condition': '','pid': 11,'level': 2,'sort': 50,'icon': null,'children': [] }, {'id': 13,'name': 'conf/del','title': '配置刪除','type': 1,'status': 1,'condition': '','pid': 11,'level': 2,'sort': 50,'icon': null,'children': [] }, {'id': 14,'name': 'conf/edit','title': '配置編輯','type': 1,'status': 1,'condition': '','pid': 11,'level': 2,'sort': 50,'icon': null,'children': [] }] }, {'id': 9,'name': 'conf/conf','title': '配置項','type': 1,'status': 1,'condition': '','pid': 1,'level': 1,'sort': 50,'icon': null,'children': [] }] }, {'id': 15,'name': 'admin','title': '管理員','type': 1,'status': 1,'condition': '','pid': 0,'level': 0,'sort': 50,'icon': 'fa-user','children': [ {'id': 16,'name': 'admin/lst','title': '管理員列表','type': 1,'status': 1,'condition': '','pid': 15,'level': 1,'sort': 50,'icon': null, }, {'id': 27,'name': 'authrule/lst','title': '權限列表','type': 1,'status': 1,'condition': '','pid': 15,'level': 1,'sort': 50,'icon': null, }, {'id': 30,'name': 'authgroup/lst','title': '用戶組','type': 1,'status': 1,'condition': '','pid': 15,'level': 1,'sort': 50,'icon': null, }] }]

上面的json是多維數組,我想用js for循環把children下面的數組輸出,但不知道為什么輸出不了,也沒報錯.

$.ajax({ type: 'get', url: '/admin/index/menu', async: true, dataType: ’json’, success: function(res) {for(var i = 0; i < res.length; i++) { console.log(res[i].children); //這個能輸出 for (var a=0;a<res[i].children;a++) {console.log(res[i].children[a]); //這個不能輸出,也沒有報錯 }} }})

請問是哪里錯了?

問題解答

回答1:

$.ajax({ type: 'get', url: '/admin/index/menu', async: true, dataType: ’json’, success: function(res) {for(var i = 0; i < res.length; i++) { console.log(res[i].children); for (var a = 0; a < res[i].children.length; a++) { // <-- 此處少了.length,數字和對象比較大小,結果為false,第二個條件一次也滿足不了console.log(res[i].children[a]); }} }}回答2:

a<res[i].children -> a<res[i].children.length

回答3:

雖然來晚了,但是我覺得還是可以補充一下

一般我個人比較喜歡使用 foreach 遍歷,在 JS 里是(以此例中的代碼為例)

res.forEach(r => { r.children.forEach(c => {// do something });});

上面用了es6的箭頭函數,如果要在 es5 中寫,直接換成 function 表達式就好

回答4:

這里應該是要做個遞歸,推薦了解下遞歸知識遞歸遍歷節點

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 114毛片免费观看网站 | 亚洲欧美一区二区三区在线 | 久久久久久亚洲精品不卡 | 香蕉视频在线观看黄 | 亚洲综合日韩精品欧美综合区 | 成人免费ā片 | 美女免费黄网站 | 中文字幕成人免费视频 | 美国一级毛片片aaa 美国一级毛片片aa成人 | 日韩亚洲欧美一区 | 日本一本久道 | 国产精品一国产精品免费 | 国产成人亚洲欧美三区综合 | 亚洲免费色| 精品欧美一区二区三区四区 | 美女张开腿让男人桶爽动漫视频 | 91热久久免费频精品黑人99 | 亚洲天堂网站在线 | 久久国产精品免费看 | 欧美精品成人一区二区视频一 | 国产成人精品久久 | 男人一进一出桶女人视频 | 大片毛片女女女女女女女 | 成年女人免费毛片视频永久 | 91免费视频版 | 国产在线一区二区三区四区 | 91精品国产色综合久久不 | 欧美老熟妇bbbb毛片 | 亚洲福利精品一区二区三区 | 中文字幕视频在线 | 久久大陆| 中国农村一级毛片 | 亚洲高清国产品国语在线观看 | 精品欧美一区二区精品久久 | 精品欧美日韩一区二区 | 国内精品久久影视 | 久久亚洲国产午夜精品理论片 | 日本三级成人午夜视频网 | 亚州a| 国产精品专区第二 | 欧美日韩精品一区二区三区视频在线 |