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

金华安全网站建设怎么收费/网络广告营销的特点

金华安全网站建设怎么收费,网络广告营销的特点,电子商务书城网站建设方案,滁州做网站前言 做项目使常遇到需要将后台返回的数据,转换为树状结构给用户展现,例如: 这也是前端面试常考的算法题,一起来检测一下吧。 步骤 准备一个空的树对象。遍历列表中的每个元素。对于每个元素,根据该元素的父级ID找到…

前言

做项目使常遇到需要将后台返回的数据,转换为树状结构给用户展现,例如:

 这也是前端面试常考的算法题,一起来检测一下吧。

步骤

  1. 准备一个空的树对象。
  2. 遍历列表中的每个元素。
  3. 对于每个元素,根据该元素的父级ID找到其对应的父节点。
  4. 如果找到了父节点,则将该元素添加到父节点的子节点列表中。
  5. 如果没有找到父节点,则创建一个新的节点,并将该元素作为其子节点。
  6. 重复步骤 2~5,直到遍历完所有元素。
  7. 返回树对象。

代码示例

const list = [{ id: 1, name: 'Node 1', parentId: null },{ id: 2, name: 'Node 1-1', parentId: 1 },{ id: 3, name: 'Node 1-2', parentId: 1 },{ id: 4, name: 'Node 1-1-1', parentId: 2 },{ id: 5, name: 'Node 2', parentId: null },{ id: 6, name: 'Node 2-1', parentId: 5 },
]function listToTree(list) {const map = {} // 用于存储节点 id 与节点的映射关系const tree = [] // 树的根节点// 首次遍历,将节点 id 与节点进行映射list.forEach(node => {map[node.id] = { ...node, children: [] }})// 第二次遍历,构建树结构list.forEach(node => {if (node.parentId) {// 如果存在父级节点,则将当前节点添加到父级节点的子节点列表中map[node.parentId].children.push(map[node.id])} else {// 否则,将当前节点作为根节点tree.push(map[node.id])}})return tree
}const tree = listToTree(list)
console.log(tree)

输出:

[{"id": 1,"name": "Node 1","parentId": null,"children": [{"id": 2,"name": "Node 1-1","parentId": 1,"children": [{"id": 4,"name": "Node 1-1-1","parentId": 2,"children": []}]},{"id": 3,"name": "Node 1-2","parentId": 1,"children": []}]},{"id": 5,"name": "Node 2","parentId": null,"children": [{"id": 6,"name": "Node 2-1","parentId": 5,"children": []}]}
]

运用场景

1. 文件系统:将文件系统中的文件和文件夹组织为树状结构。

2. 组织架构:在企业中,可以使用树状结构来表示员工之间的关系,从而构建组织架构图。

3. 导航菜单:在网站或应用程序的导航菜单中,通常使用树状结构来表示不同的页面层级。

4. 评论回复:在社交媒体或论坛中,用户可以对评论进行回复,这种回复关系可以使用树状结构来组织和展示。

5. 分类目录:电商网站中的商品分类、博客中的文章分类等都可以使用树状结构进行组织和展示。

http://www.jmfq.cn/news/5140459.html

相关文章:

  • wordpress数据名/seo实战指导
  • 网站模板 wordpress/找网站设计公司
  • 破解wordpress邀请码/seo优化外包顾问
  • 备案期间怎么做网站/百度链接提交工具
  • 做网站有什么用/推广平台app
  • 图片设计软件app/淘宝关键词怎么优化
  • 天津网站开发建设/四川seo哪里有
  • 杭州十大电商公司排名/seo网站的优化流程
  • 找人做微信网站/计算机基础培训机构
  • 网站开发人员保密/网页宣传
  • 网站定制公司哪家好/手机网站制作平台
  • 东莞网站建设行业翘楚/国内ip地址 免费
  • 河南专业网站建设公司/武汉建站优化厂家
  • 网站建设中可能出现的问题/湖人最新排名最新排名
  • wordpress 的应用/网站seo优化外包
  • 小说网站怎么做流量/郑州做网站推广哪家好
  • 沈阳做网站seo/外链代发免费
  • 进入江苏省住房和城乡建设厅网站首页/seo建站的步骤
  • 个人网站开发协议/百度广告收费表
  • 自带代理的浏览器/广州seo网站推广
  • php 用什么做网站服务器吗/制作网站需要什么技术
  • 武汉企业网站建设的公司/排名前十的大学
  • 免费网站建站模板/昆明百度关键词优化
  • 网站数据怎么做接口供小程序调用/市场营销策划公司
  • 绍兴百度seo公司/关键词首页排名优化平台
  • 域名有了主机有了如何做网站/百度大盘指数
  • 娄底网站建设的话术/交友网站有哪些
  • 老外做汉字网站/自己怎么创建网站
  • 武汉 网站建设一条龙/google推广平台怎么做
  • 湛江免费模板建站/佛山做优化的公司