JavaScript樹形數(shù)據(jù)根據(jù)id查詢

1.方法

 function searchTree(tree, id){
    let res = ""
    let state = false
    function readTree(tree, id) {
      if(state)return
      for (let i = 0; i < tree.length; i++) {
        if (tree[i].id == id) {
          state  = true
          res = tree[i]
        } else {
          if (tree[i].children != null) {
            readTree(tree[i].children, id)
          }
        }
      }
    }
    readTree(tree,id)
    return res
  }

2.測試

let b = [
    {
      id: 1,
      name: 1,
      children: [
        {
          id: 11,
          name: 11,
          children: [
            {
              id: 13,
              name: 22,
              children: null
            }
          ]
        },
        {
          id: 12,
          name: 12,
          children: [
            {
              id: 14,
              name: 14,
              children: null
            }
          ]
        }
      ]
    }
  ]
  function searchTree(tree, id){
    let res = ""
    let state = false
    function readTree(tree, id) {
      if(state)return
      for (let i = 0; i < tree.length; i++) {
        if (tree[i].id == id) {
          state  = true
          res = tree[i]
        } else {
          if (tree[i].children != null) {
            readTree(tree[i].children, id)
          }
        }
      }
    }
    readTree(tree,id)
    return res
  }
 
  console.log(  searchTree(b, 1))
  console.log(  searchTree(b, 11))
  console.log(  searchTree(b, 13))

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容