温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在javascript中将list转换成树状结构

发布时间:2021-02-23 15:33:59 来源:亿速云 阅读:457 作者:戴恩恩 栏目:web开发

这篇文章主要为大家详细介绍了如何在javascript中将list转换成树状结构,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:

JavaScript的特点

1.JavaScript主要用来向HTML页面添加交互行为。 2.JavaScript可以直接嵌入到HTML页面,但写成单独的js文件有利于结构和行为的分离。 3.JavaScript具有跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行。

如下所示:

/**    * 将list装换成tree    * @param {Object} myId 数据主键id    * @param {Object} pId  数据关联的父级id    * @param {Object} list list集合    */   function listToTree(myId,pId,list){    function exists(list, parentId){     for(var i=0; i<list.length; i++){      if (list[i][myId] == parentId) return true;     }     return false;    }        var nodes = [];    // get the top level nodes    for(var i=0; i<list.length; i++){     var row = list[i];     if (!exists(list, row[pId])){      nodes.push(row);     }    }        var toDo = [];    for(var i=0; i<nodes.length; i++){     toDo.push(nodes[i]);    }    while(toDo.length){     var node = toDo.shift(); // the parent node     // get the children nodes     for(var i=0; i<list.length; i++){      var row = list[i];      if (row[pId] == node[myId]){       //var child = {id:row.id,text:row.name};       if (node.children){        node.children.push(row);       } else {        node.children = [row];       }       toDo.push(row);      }     }    }    return nodes;   }      var list=[    {"ids":1,"parendId":0,"name":"Foods",url:"wwww"},    {"ids":2,"parentId":1,"name":"Fruits"},    {"ids":3,"parentId":1,"name":"Vegetables"},    {"ids":4,"parentId":2,"name":"apple"},    {"ids":5,"parentId":2,"name":"orange"},    {"ids":6,"parentId":3,"name":"tomato"},    {"ids":7,"parentId":3,"name":"carrot"},    {"ids":8,"parentId":3,"name":"cabbage"},    {"ids":9,"parentId":3,"name":"potato"},    {"ids":10,"parentId":3,"name":"lettuce"},        {"ids":11,"parendId":0,"name":"Foods"},    {"ids":12,"parentId":11,"name":"Fruits"},    {"ids":13,"parentId":11,"name":"Vegetables"},    {"ids":14,"parentId":12,"name":"apple"},    {"ids":15,"parentId":12,"name":"orange"},    {"ids":16,"parentId":13,"name":"tomato"},    {"ids":17,"parentId":13,"name":"carrot"},    {"ids":18,"parentId":13,"name":"cabbage"},    {"ids":19,"parentId":13,"name":"potato"},    {"ids":20,"parentId":13,"name":"lettuce"}   ];      console.log(JSON.stringify(listToTree("ids","parentId",list)));   console.log(listToTree("ids","parentId",list));

以上就是亿速云小编为大家收集整理的如何在javascript中将list转换成树状结构,如何觉得亿速云网站的内容还不错,欢迎将亿速云网站推荐给身边好友。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI