为了账号安全,请及时绑定邮箱和手机立即绑定

树状数组取出ID为3的项,方法越简单越好,求解

树状数组取出ID为3的项,方法越简单越好,求解

繁花不似锦 2019-03-04 22:07:21
const floor = [   {     id: 1,     text: '一层',     children: [       {         id: 2,         text: '二层',         children: [           {             id: 3,             text: '三层',             children: [               {                 id: 4,                 text: '四层'               }             ]           }         ]       }     ]   }];
查看完整描述

2 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

let result = null;const findItemById = (id, list = floor) => {
  list.some(e => {      if (e.id === id) {
          result = e;          return true;
      } else {          if (e.children) {
            result = findItemById(id, e.children);            if (result) {              return true;
            } else {              return false;
            }
          }
      }
  })  return result;
}console.log(findItemById(3))


查看完整回答
反对 回复 2019-03-04
?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

看数据很有规律偷个懒

        function getId(id, obj = floor) {            for (let i = 1; i < id; i++) {
                obj = obj[0]["children"]
            }            return obj[0]
        }        console.log(getId(3))


查看完整回答
反对 回复 2019-03-04
  • 2 回答
  • 0 关注
  • 620 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信