亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

js用閉包遍歷樹狀數組的方法

2019-11-20 20:55:59
字體:
來源:轉載
供稿:網友

做公司項目時,要求寫一個方法,方法的參數為一個菜單數組集合和一個菜單id,菜單數組的格式為樹狀json,如下面所示:

復制代碼 代碼如下:
[{"id":28,"text":"公司信息","children":[

     {"id":1,"text":"公司文化"},

     {"id":2,"text":"招聘計劃"},

     {"id":6,"text":"公司新聞","children":[

          {"id":47,"text":"行業新聞"}]},

          {"id":11,"text":"內部新聞","children":[

                         {"id":24,"text":"行政信息"},

                         {"id":27,"text":"高層指示"}]},

          {"id":22,"text":"聯系我們"},

          {"id":26,"text":"產品展示","children":[

                         {"id":32,"text":"電力產品"},

                         {"id":33,"text":"配件介紹"}}]

 }] }]

現在給出的菜單id為32,要求找到對應的項,并返回對應的菜單名稱,方法是先循環遍歷數組,當項的id等于指定的id時,將菜單名稱取出,如果不等于則看當前項是否有children,如果children不為空且數量大于0,則遍歷children,這時就要用到javascript的閉包,將遍歷children的方法放在一個匿名方法中,這樣一直在匿名方法中遞歸自身,當遇到相同名稱的id,就跳出循環,然后從主方法中返回得到的菜單名稱,代碼如下:

復制代碼 代碼如下:
function getMenuName(menus, id) {
  var name = "" ;
  for (var i = 0; i < menus.length; i++) {
    if (menus[i].id == id) {
      name = menus[i].text;
      break;
    }
    else {
       (function () {
        var m = arguments[0];
        var menuid = arguments[1];
        for (var j = 0; j < m.length; j++) {
          if (m[j].id == menuid) {
            name = m[j].text;
            break;
          }
          else if m[j].children != null && m[j].children.length > 0) {
            arguments.callee(m[j].children, val);//遞歸匿名方法
          }
        }
      })(menus[i].children, id);
    }
  }
  return name;
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美在线视频播放| 98精品国产自产在线观看| 亚洲a∨日韩av高清在线观看| 国内精品小视频在线观看| 亚洲精品中文字幕有码专区| 欲色天天网综合久久| 久久久久99精品久久久久| 日韩av一区二区在线| 亚洲精品mp4| 欧美精品做受xxx性少妇| 欧美色播在线播放| 国产一区二中文字幕在线看| 77777少妇光屁股久久一区| 国产精品网站大全| 日韩欧亚中文在线| 国产精品成人v| 97在线观看视频国产| 亚洲小视频在线观看| x99av成人免费| 日韩国产精品亚洲а∨天堂免| 国产午夜精品免费一区二区三区| 97国产成人精品视频| 91中文精品字幕在线视频| 日本精品久久中文字幕佐佐木| 久久久久久九九九| 欧美剧在线观看| 一区二区三区四区视频| 日韩欧美成人区| 国产成人亚洲综合91精品| 亚洲香蕉成视频在线观看| 日本欧美国产在线| 91国内在线视频| 黄网动漫久久久| 中文字幕在线成人| 欧美成人精品在线播放| 亚洲人成网站色ww在线| 亚洲精品第一页| 亚洲黄页网在线观看| 亚洲色图欧美制服丝袜另类第一页| 久久久久久久久久久91| 成人看片人aa| 亚洲综合精品伊人久久| 久久久久久久久久久久久久久久久久av| 亚洲自拍欧美色图| 国产精品福利无圣光在线一区| 国产91av在线| 日韩精品www| 亚洲影院色无极综合| 国产精品久久久久aaaa九色| 日本成人在线视频网址| 国产精品高清在线| 精品国偷自产在线| 尤物tv国产一区| 欧美资源在线观看| 国产美女精品视频| 在线观看久久av| 日av在线播放中文不卡| 国产午夜精品视频免费不卡69堂| 欧美日韩视频免费播放| 狠狠色香婷婷久久亚洲精品| 国产精品视频精品视频| 一区二区三区视频免费在线观看| 国产精品免费观看在线| 欧美xxxx做受欧美.88| 亚洲免费影视第一页| 欧美国产高跟鞋裸体秀xxxhd| 青青a在线精品免费观看| 国产精品自拍视频| 国产精品1234| 色噜噜亚洲精品中文字幕| 亚洲图片在区色| 午夜精品久久久久久久久久久久| 色哟哟亚洲精品一区二区| 久久国产精品电影| 日韩欧美大尺度| 91精品视频播放| 日韩在线视频线视频免费网站| 丰满岳妇乱一区二区三区| 亚洲女人被黑人巨大进入al| 亚洲男人天堂2019| 国产在线一区二区三区| 91香蕉电影院| 亚洲女人天堂色在线7777| 亚洲欧美日韩一区二区在线| 久久国产精品电影| 国产欧美精品日韩精品| 欧美大尺度在线观看| 中文字幕精品www乱入免费视频| 日韩国产高清污视频在线观看| 国产精品7m视频| 久久成人国产精品| 亚洲欧美国产另类| 亚洲毛片一区二区| 日韩欧美一区二区三区久久| 91久久嫩草影院一区二区| 欧洲亚洲在线视频| 成人欧美一区二区三区黑人| 亚洲性69xxxbbb| 最近中文字幕mv在线一区二区三区四区| 国产成人精品久久二区二区91| 国产高清在线不卡| 国产精品视频色| 不用播放器成人网| 国产va免费精品高清在线| 久久精品成人欧美大片古装| 日韩中文字幕免费| 亚洲精品mp4| 亚洲国产精品久久久久| 伊人一区二区三区久久精品| 亚洲成人激情在线观看| 自拍视频国产精品| 精品人伦一区二区三区蜜桃免费| 国产精品久久久久久网站| 久久99精品久久久久久琪琪| 欧美激情一二区| 成人天堂噜噜噜| 国产欧美va欧美va香蕉在线| 国产精品中文久久久久久久| 国产亚洲欧洲黄色| 亚洲第一区中文字幕| 日韩欧美aⅴ综合网站发布| 久久在线观看视频| 国产精品久久久久久久久久三级| 精品欧美aⅴ在线网站| 亚洲成人精品在线| 成人激情在线播放| 国产精品久久久久久久久久久新郎| 日韩一区二区在线视频| 国产一区二区黑人欧美xxxx| 国产精品吹潮在线观看| 欧美丰满片xxx777| 伊人久久久久久久久久久| 69久久夜色精品国产7777| 性欧美在线看片a免费观看| 精品视频久久久| 日本精品va在线观看| 久久亚洲精品国产亚洲老地址| 亚洲性夜色噜噜噜7777| 日韩欧美在线网址| 大荫蒂欧美视频另类xxxx| 26uuu另类亚洲欧美日本老年| 亚洲精品ady| 欧美日韩午夜激情| 亚洲人成电影在线| 亚州成人av在线| 中文字幕欧美日韩精品| 久久中文字幕一区| 日韩在线免费观看视频| 欧美日本黄视频| 久久久久久久久久久久av| 成人免费淫片aa视频免费| 精品动漫一区二区| 国产精品免费看久久久香蕉| 亚洲欧美一区二区精品久久久| 91精品视频免费| 亚洲男人av电影| 久久久久一本一区二区青青蜜月| 亚洲无亚洲人成网站77777| 欧美专区在线视频| 亚洲日本成人网| 成人免费网站在线| 欧美夫妻性生活视频| 亚洲精品中文字幕有码专区| 91精品国产91久久久久久吃药|