国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript作用域問題實例分析

2019-11-20 12:03:47
字體:
來源:轉載
供稿:網友

最近做項目過程中需要根據JSON數據生成一個樹狀的目錄,結果代碼如下:

var folderList=[  {    "FolderName": "ASD",    "ChildList": null  },  {    "FolderName": "內網公告",    "ChildList": null  },  {    "FolderName": "測試文檔",    "ChildList": null  },  {    "FolderName": "軟件開發",    "ChildList": null  },  {    "FolderName": "Test",    "ChildList": [      {        "FolderName": "Test2",        "ChildList": [          {            "FolderName": "Test3",            "ChildList": null          }        ]      }    ]  },  {    "FolderName": "個人",    "ChildList": null  },  {    "FolderName": "公司通知",    "ChildList": null  },  {    "FolderName": "采購平臺",    "ChildList": null  }];      var str='';      function generateFolders(arr) {        if (arr.length > 0) {          str += '<div class="sui-list sui-list-icon ubt bc-gra1">';          for (var i = 0, len = arr.length; i < len; i++) {            str += '<ul class="ub ub-ac">'                 + '<li class="sui-list-licon sui-icon-ok-circle fts2">' + '</li>'                 + '<ul class="ub ub-f1 sui-list-item">'                  + '<li class="ub-f1 sui-list-text sui-list-nowrap">' + arr[i].FolderName + '</li>'                  + '<li class="sui-list-ricon ub-img sui-icon-chevron-right fts2"></li>'                 + '</ul>'                + '</ul>';            if (isDefine(arr[i].ChildList)) {              str += generateFolders(arr[i].ChildList);            }          }          str += '</div>';          return str;        }else{          return '';        }      }      var folderTxt ='<div class="sui-list sui-list-icon ubt bc-gra1">'                  +'<ul class="ub ub-ac">'                    +'<li class="sui-list-licon sui-icon-drawer fts2">' + '</li>'                    +'<ul class="ub ub-f1 sui-list-item">'                      +'<li class="ub-f1 sui-list-text sui-list-nowrap">我的目錄</li>'                      +'<li class="sui-list-ricon ub-img sui-icon-chevron-right fts2"></li>'                    +'</ul>'                  +'</ul>';      folderTxt+=generateFolders(folderList);      folderTxt += '</div>';      $('#list').html(folderTxt);      /**       * 判斷是否是空       * @param value       */      function isDefine(value){        if(value == null || value == "" || value == "undefined" || value == undefined || value == "null" || value == "(null)" || value == 'NULL' || typeof(value) == 'undefined'){          return false;        }        else{       value = value+"";          value = value.replace(//s/g,"");          if(value == ""){            return false;          }          return true;        }      }

結果出來的樹如下圖:

經排查,發現是由于str定義的位置不對引起的,將str定義為局部變量就可以了。

function generateFolders(arr) {        var str='';        if (arr.length > 0) {          str += '<div class="sui-list sui-list-icon ubt bc-gra1">';          for (var i = 0, len = arr.length; i < len; i++) {            str += '<ul class="ub ub-ac">'                 + '<li class="sui-list-licon sui-icon-ok-circle fts2"></li>'                 + '<ul class="ub ub-f1 sui-list-item">'                   + '<li class="ub-f1 sui-list-text sui-list-nowrap">' + arr[i].FolderName + '</li>'                   + '<li class="sui-list-ricon ub-img sui-icon-chevron-right fts2"></li>'                 + '</ul>'               + '</ul>';            if (isDefine(arr[i].ChildList)) {              str += generateFolders(arr[i].ChildList);            }          }          str += '</div>';          return str;        }else{          return '';        }      }

修改之后,可實現想的效果:

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建德市| 清镇市| 南平市| 邵东县| 方城县| 定陶县| 中阳县| 循化| 谢通门县| 曲周县| 永顺县| 张家川| 大理市| 韩城市| 淄博市| 富锦市| 仙居县| 鄂尔多斯市| 邢台市| 临泽县| 丘北县| 思南县| 静安区| 雷山县| 福建省| 庄河市| 北碚区| 哈尔滨市| 平乡县| 徐州市| 大竹县| 新营市| 独山县| 丽江市| 凤冈县| 芜湖市| 陇西县| 会泽县| 河东区| 汉川市| 屏东市|