当前位置: 首页 > news >正文

广州 骏域网站建设专家优化方案怎么写

广州 骏域网站建设专家,优化方案怎么写,十大软件app排行榜下载,用什么做网站后台其实问题很简单,就是想要循环遍历整个data对象,来实现所有name转成label,但是想到里面还有children属性,整个children里面可能还会嵌套很多很多的name,如此循环,很难搞,知道使用递归&#xff0c…

在这里插入图片描述
其实问题很简单,就是想要循环遍历整个data对象,来实现所有name转成label,但是想到里面还有children属性,整个children里面可能还会嵌套很多很多的name,如此循环,很难搞,知道使用递归,但却无从下手。

let data = {name: 'a', children: [{ name: 'b', children: null },{ name: 'c', children: [{ name: 'd', children: null },{ name: 'e', children: [{ name: 'f', children: null }] }]}]
}

这里面的结构可能还会有更多的嵌套,首先递归的思路是对的,我们要找一个临界条件来终止整个递归,有一个条件才让他递归。
首先递归肯定是要循环的。
我们可以去循环data整个对象,也可以按照children数组的形式去循环
我喜欢喜欢数组,其实大同小异。

const aaa = (data) => {Array.isArray(data) ? data = data : data = [data]return data.map(item => {item['label'] = item.nameif (item.children && item.children.length !== 0) {aaa(item.children)}return item})
}

我们使用map循环,map的话可能返回一个新的数组,是符合我们递归的需求,不需要新建立一个变量来存储改变之后的数组对象。
这个问题的临界点就是,children是否存在子级,那我们就可以这样判断找到临界

item.children && item.children.length !== 0

只有children存在并且他里面的水族项是有值的才能让他递归,否则不参与递归,直接返回。
递归的话,直接再一次

aaa(item.children)

进入递归条件。这个时候操作的都是item.children里的数组对象,当然这里面也有用带复杂数据类型引用关系的特点。
在这里插入图片描述
这样成功了,我们也可以吧name属性删除

delete item.name

在这里插入图片描述

http://www.yayakq.cn/news/92095/

相关文章:

  • 做网站什么程序计算机软件开发规范1988作废
  • 学校学院网站建设意义猪八戒网做网站
  • 网站推广策略包括哪些内容邯郸哪里可以学建网站
  • 网站建设基础 ppt白云区专业网站建设
  • 山东住房和城乡建设厅网站上海外贸网站建
  • 如何做自己的网站商城开发网站教程
  • 网站防采集建网站不想用怎样撤销
  • 建设电影网站论文wordpress上传七牛
  • 植物网站模板网站开发都需要什么
  • 做网站的公司怎么拓展业务做网站哪种字体好看
  • 怎么看别人网站怎么做的优化蓬莱建网站
  • 太原网站开发工程师wordpress 配置数据库
  • 质感网站系统下载 锐狐青岛建设银行网站首页
  • 企业网站cms系统在线网站代码生成器
  • 计算机学习网站seo优化标题 关键词
  • 广州智能建站软件wordpress html5插件
  • 销售怎么找客户小红书seo排名帝搜软件
  • 网站建设介绍大全嘉定网络公司
  • 云南文山网站建设费用网站开发的现状分析
  • 主机网站建设制作农村自建房设计图纸大全
  • 电器企业网站建站怎样在网站上做友情链接
  • 工作网站建设动易做网站如何
  • html网页建设网站代码wordpress数据库域名表
  • 中文域名查询网站wordpress被自动发布文章
  • 免费做网站方案域名备案和网站备案
  • 个人做信息分类网站需备案吗wordpress结构
  • 秦皇岛建设局网站6杭州旺道企业服务有限公司
  • 聊城网站建设公司电话网站flash背景
  • 辛集seo网站优化wordpress+伪静态+403
  • 安徽龙山建设网站西部数码做的网站打不开