js 평 급 데이터 구조 가 트 리 데이터 구조 로 전환

4792 단어
//          ,           
//       
//         arr:         pNodes:    
function toNestData(arr,pNodes){
    var parentNode=pNodes||[{
            id:"-1",//          
            children:[] //         
            }]
    _.each(parentNode,function(node){//    
        var nodes=[],
        nodeChilds=[];
        for(var i=0;i<arr.length;i++){//    
            if(arr[i].parentId===node.id){
                  nodes.push(arr[i]);
            }else{
                nodeChilds.push(arr[i]);
            }
        }
        if(nodes.length>0){
            node.children=nodes;
            toNestData(nodeChilds,nodes);
        }
    })
    return parentNode[0].children; 
}

좋은 웹페이지 즐겨찾기