我们一起写算法02

本文介绍了一道知名公司笔试题,即如何使用JavaScript将JSON数据转换成树形结构,便于渲染。主要分为三个步骤:理解树形结构效果、设计实现思路和编写代码。实现过程中,首先按id值排序JSON数据,然后遍历数据,通过pid查找并添加到对应父元素的children中。最后将一级元素存入结果数组。
摘要由CSDN通过智能技术生成

今天看到一知名公司的笔试题目,于是尝试解答。

题目如下:

使用js方法把json数据转换成树形结构。

思路如下:

json数据转换成树形结构,无非就是便于渲染,将一个平铺的 ‘树’ 结构转换成一个真正的 ‘树’ 结构,就是如下效果:

1.树形结构效果

json格式数据:

[
    {
   id: 7,  name: '快鱼',  pid: 2},
    {
   id: 8,  name: '海澜之家',  pid: 2},
    {
   id: 9,  name: '森马',  pid: 2},
    {
   id: 13,  name: '华为mate10',  pid: 4},
    {
   id: 14,  name: '华为mate20',  pid: 4},
    {
   id: 15,  name: '华为mate30',  pid: 4},
    {
   id: 4,  name: '华为',  pid: 1},
    {
   id: 5,  name: 'ViVo',  pid: 1},
    {
   id: 6,  name: 'OPPO',  pid: 1},
    {
   id: 10,  name: '长虹',  pid: 3},
    {
   id: 11, name: '飞利浦',  pid: 3},
    {
   id: 12, name: '松下',  pid: 3},
    
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值