js list数据 转 树状 层级 JSON,递归生成树状 层级 JSON

<!DOCTYPE html>
<html>
<head>
<script>
var data=[
{"id":"aaa","parentId":"account","spType":0,"layerId":0,"seqId":1,"name":"阿萨德发多少","deleted":"0"},
{"id":"account","parentId":"","spType":0,"layerId":0,"seqId":50,"name":"账户","deleted":"0"},
{"id":"bbb","parentId":"account","spType":0,"layerId":0,"seqId":2,"name":"阿萨德发多少","deleted":"0"},
{"id":"ccc","parentId":"account","spType":0,"layerId":0,"seqId":3,"name":"a啊都是发","deleted":"0"},
{"id":"ddd","parentId":"dispatch","spType":0,"layerId":0,"seqId":1,"name":"大夫","deleted":"0"},
{"id":"dispatch","parentId":"","spType":0,"layerId":0,"seqId":2,"name":"通知公告","deleted":"0"},
{"id":"eee","parentId":"dispatch","spType":0,"layerId":0,"seqId":2,"name":";卡萨丁","deleted":"0"},
{"id":"fff","parentId":"gridding","spType":0,"layerId":0,"seqId":1,"name":"拉收到了","deleted":"0"},
{"id":"gridding","parentId":"","spType":0,"layerId":0,"seqId":1,"name":"网格化管理","deleted":"0"},
{"id":"portals","parentId":"","spType":0,"layerId":0,"seqId":3,"name":"综合信息门户管理","deleted":"0"}
];

   var getJsonTree=function(data,parentId){
    	var itemArr=[];
		for(var i=0;i<data.length;i++){	
			var node=data[i];
			//data.splice(i, 1)
			 if(node.parentId==parentId ){	
				var newNode={id:node.id,title:node.name,nodes:getJsonTree(data,node.id)};
				itemArr.push(newNode);				 
			 }
		}
		return itemArr;
    }
	
	console.log(getJsonTree(data,''));
	
	
</script>
</head>

<body>

</body>
</html>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏向治洪

React Native项目实战之搭建美团个人中心界面

在很多app应用型APP中,个人中心往往会单独出一个模块,而对于刚入门React Native的朋友来说,怎么去实现一些静态的页面,并且怎么着手实现,怎么分层,...

2726
来自专栏Android 技术栈

京东CPS商品推广接入流程

京东CPS,只需要一个链接足以,这条链接放在自身的WebViewActivity中,如果设置了唤起App,则链接会返回一个打开京东App的规则字符串,我们获取到...

1231
来自专栏iOSer成长记录

iOS-CoreImage滤镜效果预览

1293
来自专栏华仔的技术笔记

要你命三千:老代码中的那些坑 define STRHASSBUSTR(str,subStr) ...

3035
来自专栏吴小龙同學

Android 电量优化

为什么优化 现在智能手机基本能一天一充,如果一个应用耗电过多,肯定是有问题的,而开发中电量的优化可能是最容易被忽略的。 如何检测 1、手机设置-电池使用情况,查...

2647
来自专栏iOS开发攻城狮的集散地

iOS开源小项目-WSL

2356
来自专栏iOS开发笔记

cordova插件- Contacts

添加插件 $cordova plugin add cordova-plugin-contacts 图 8出现如上则添加成功 插件的使用 Methods navi...

3275
来自专栏iOS Developer

FFmpeg-iOS获取摄像头麦克风

1112
来自专栏林德熙的博客

俄罗斯方块

俄罗斯方块是一个很经典的游戏,做一个UWP俄罗斯方块没有什么用,我想说的是移植,把经典游戏移植到UWP。

611
来自专栏mathor

第六届蓝桥杯决赛B组C/C++——积分之谜

944

扫码关注云+社区