亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

根據樹節點的位置,修改對應的節點值?

根據樹節點的位置,修改對應的節點值?

大話西游666 2019-05-25 14:04:14
如題,根據樹形結構中的節點位置,修改節點的值,例如[{id:0,pos:'0',name:'a-0',children:[{id:1,pos:'0-0',name:'b-1'},{id:2,pos:'0-1'name:'b-2',},{id:3,pos:'0-2'name:'b-3',children:[{id:4,pos:'0-2-0'name:'c-4',},{id:5,pos:'0-2-1',name:'c-5',children:[{id:6,pos:'0-2-1-0'name:'d-6',}]}]}]}]已知位置'0-2-1'表示'c-5',可以通過這個位置修改樹的值。希望能夠通過不遞歸查詢樹的方式修改值,可擴展。謝謝
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

供參考
'0-2-1'.split('-').reduce((node,p,i,pos)=>i===pos.length-1?node[p].name:node[p].children,data)
                            
查看完整回答
反對 回復 2019-05-25
?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

對應的方法:
functionsetTreeDataByPos(,pos,callback){
constposArr=pos.split('-')
posArr.reduce((node,p,i,pos)=>{
if(i===posArr.length-1){
callback(node,i)
}else{
returnnode[p].children
}
},tree)
}
                            
查看完整回答
反對 回復 2019-05-25
  • 2 回答
  • 0 關注
  • 595 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號