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

企业网站内页设计模板代理网点

企业网站内页设计模板,代理网点,网站模板编辑软件,互联网公司排名情况其实问题很简单,就是想要循环遍历整个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/965227/

相关文章:

  • 网站专业制作公司深圳做网站一个月多少钱
  • 建设音乐主题网站提供网站设计方案公司
  • 温州网站建设咨询建个企业网站对公司宣传有用吗
  • 单位的网站的建设方案微信公众号登录电脑版
  • 单位网站建设费如何入账wordpress热门文章
  • 互联网建站专门做考研的网站
  • 泗阳网站定制影视网站建设
  • 建设部继续教育网站网站关键字可以做几个
  • 培训班在哪个网站找管理咨询公司招聘
  • 功能型网站案例泰安网络宣传
  • 网站如何做容易收录市场调研公司排名
  • 商丘睢阳区市政建设局网站制作相册
  • 网站建设流程及构架俄语网站建设注意事项
  • 知道一个网站怎么知道是谁做的百度优化深圳做网站公司有哪些公司
  • 海拉尔做网站cms系统复杂权限
  • 网站建设开发合同模板下载flex 做网站
  • 手机做网站的步骤微信官网免费下载
  • 免费微网站建站系统源码网上贸易平台有哪些
  • 模型网站大全免费响应式页面怎么写
  • 域外网站是免费建自己的网站赚钱
  • 建设网上购物网站网站模板佳好乐云seo
  • c语言做网站的代码什么是网站建设的建议
  • 深圳做互联网教网站公司wordpress重置密碼
  • 网站排名突然没有了做网站公司的收费多少
  • 吉林一站式网站建设介绍网站名称更改需要多久
  • 网站开发分几种类型深圳市建设交易中心网站首页
  • 中国建设银行官方网站下载安装做网站国外访问
  • 做网站记什么科目泰安网络科技有限公司电话
  • 网站做外链平台有哪些若比邻跨境电商网站
  • 西安网站建设 美科动采集网站文章