SOURCE

let geoJSONs = [{
    name: '福建省自然保护区',
    features: [{
        properties: {
            name: '三明',
            fatherName: '福建省自然保护区'
        }
    }, {
        properties: {
            name: '莆田',
            fatherName: '福建省自然保护区'
        }
    }]
}, {
    name: '福州自然保护区',
    features: [{
        properties: {
            name: '旗山',
            fatherName: '福州自然保护区'
        }
    }]
}]

let treeData = [{
    name: '根节点',
    children: [{
        name: '福建省自然保护区',
        children: []
    }, {
        name: '福州自然保护区',
        children: []
    }]
}]

treeData.map((node) => {
    node.children && node.children.map((item) => {
        geoJSONs.map(geo => {
            let res = geo.features.filter(fea => fea.properties.fatherName == item.name).map((pro) => {
                return {
                    xxx: pro,
                    name: pro.properties.name
                }
            });
            console.log(res)
            item.children.push(...res)
        })
        return item
    })
})

console.log(treeData)
console 命令行工具 X clear

                    
>
console