树结构数据父节点获取所有子节点的id

本文介绍了一种使用递归函数处理会议室分组数据的方法,通过递归调用getGroupLevel和groupLevel函数,实现了获取会议室分组的所有下属节点ID的功能。此方法适用于需要遍历复杂树状结构数据并收集所有子节点ID的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用

 $scope.getGroupLevel($scope.meetingGroupData);

递归处理数据

//获取会议室分组的所有下属节点的id
    $scope.getGroupLevel = function (meetingGroupData){
        if(meetingGroupData != undefined && meetingGroupData.length > 0){
            for(var i =0 ;i < meetingGroupData.length ; i ++){
                $scope.groupLevel(meetingGroupData[i],meetingGroupData);
                //去掉最后一个逗号
                meetingGroupData[i].children = meetingGroupData[i].children.substring(0,meetingGroupData[i].children.length-1);
            }
        }
    };

 //递归获取分组子集
    $scope.groupLevel = function (currentGroup,meetingGroupData) {
        if(meetingGroupData != undefined && meetingGroupData.length > 0){
            var id = currentGroup.id;
            currentGroup.children = "";
            for(var i = 0 ; i < meetingGroupData.length;i++){
                if(id == meetingGroupData[i].pid){
                    currentGroup.children += meetingGroupData[i].id+",";
                    var nodeChildren = $scope.groupLevel(meetingGroupData[i], meetingGroupData);
                    if(nodeChildren.length > 0){
                        currentGroup.children += nodeChildren;
                    }
                }
            }
            return currentGroup.children;
        }
    };

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大小小丹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值