js 递归思路构造树型结构数据

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
 
</body>
<script>
  function create_tree(data,pid){
	pid = pid || 0;
	var list = [];
	data.map(function(item){
		if(item.pid == pid){
			item.children = create_tree(data,item.id);
			list.push(item);
		}
	});

	return list;
}
var db = [
	{id: 1, name: 'nama1', pid: 0},
	{id: 2, name: 'nama2', pid: 1},
	{id: 3, name: 'nama3', pid: 2},
	{id: 5, name: 'nama5', pid: 2},
	{id: 4, name: 'nama4', pid: 0},
	{id: 6, name: 'nama6', pid: 1110}
];


var aa = create_tree(db);
console.log(aa);
</script>
</html>

发布了165 篇原创文章 · 获赞 139 · 访问量 38万+

猜你喜欢

转载自blog.csdn.net/CodingNoob/article/details/99823545