js for 循环 递归删除嵌套数组中的其中一项

// treeData 是一个嵌套数组
// 无法使用map循环 map循环不改变原数组
doDelete = (treeData,id)=>{
      for(var i = treeData.length ; i > 0 ; i--){
          if(treeData[i-1].id == id){
            treeData.splice(i-1,1);
          }else{
            if(treeData[i-1].children){
              this.doDelete(treeData[i-1].children,id)
            }
          }
      }
    }
// 删除嵌套数组里面id是10的那一项
doDelete(arr,10)

你可能感兴趣的:(js for 循环 递归删除嵌套数组中的其中一项)