react和js递归遍历树形结构数据

tree数据结构
{
“title”:“我喜欢的明星”,
“children”:[
{
“title”:“杨幂”,
“children”:[
]
},
{
“title”:“古力娜扎”,
“children”:[
]
},
{
“title”:“迪丽热巴”,
“children”:[
]
},
{
“title”:“不喜欢的明星”,
“children”:[
{
“title”:“马蓉”,
“children”:[
]
}
]
}
]
},
{
“title”:“三国有哪些英雄”,
“children”:[
{
“title”:“吕布”,
“children”:[
{
“title”:“温侯”,
“children”:[
{
“title”:“刘备的妻子有哪些”,
“children”:[
{
“title”:“貂蝉”,
“children”:[

						       ]
				        			},
				        			{
						        		"title":"严夫人",
						        		"children":[
						        			
						        		]
				        			}
				        		]
				        	}
		        		]
		        	}
		        ]
			},
			{
		        "title":"刘备",
		        "children":[
		        	{
		        		"title":"玄德",
		        		"children":[
		        			{
				        		"title":"刘备的妻子有哪些",
				        		"children":[
				        			{
						        		"title":"甘倩",
						        		"children":[

						        		]
						        	},
						        	{
						        		"title":"糜夫人",
						        		"children":[

						        		]
						        	},
						        	{
						        		"title":"孙仁",
						        		"children":[

						        		]
						        	},
						        	{
						        		"title":"吴夫人",
						        		"children":[

						        		]
						        	},
				        		]
				        	}
		        		]
		        	}
		        ]
			},
			{
		        "title":"关羽",
		        "children":[
		        	{
		        		"title":"云长",
		        		"children":[
		        			{
				        		"title":"关羽的妻子有哪些",
				        		"children":[

				        		]
				        	}
		        		]
		        	}
		        ]
			},
			{
		        "title":"张飞",
		        "children":[
			        {
		        		"title":"翼德",
		        		"children":[
		        			{
				        		"title":"张飞的妻子有哪些",
				        		"children":[
				        			{
						        		"title":"夏侯夫人",
						        		"children":[

						        		]
						        	}
				        		]
				        	}
		        		]
			        }
		        ]
			}
		]
	}

js实现方法

在这里插入图片描述js实现的效果
在这里插入图片描述

首先是把这个数组获取到,之后先把他的第一级循环出来,然后判断数组下每个对象里面还有没有children,有的话就递归调用传入这个有的数组,没有就返回null,过程很简单,就是函数自己调用自己

react实现过程
在这里插入图片描述react实现的效果数据是从后台获取的,所以展示的效果不太一样,但是数据结构都是一样的
在这里插入图片描述
react和js实现的原理都是一样的,先是把数据给传给函数,之后先把他的父级给循环出来,之后判断父级里面有没有数组childs,有就递归调用,没有就返回空,之后函数返回dom元素,只是写法不一样,只要知道这个递归调用的意思,就没什么难度。希望能帮到各位同行遇到的这个问题

猜你喜欢

转载自blog.csdn.net/qq_38276682/article/details/86630330
今日推荐