遍历树形JSON,获取目录序号

遍历树形JSON,获取目录序号

[
    {
        id: 1,
        name: '1111',
        children: [
            id: 2,
            name: '2222',
            children: [...]
        ]
    },
    {
        id: 3,
        name: '3333',
        children: [
            id: 4,
            name: '4444',
            children: [...]
        ]
    }
]

期待的结果

[
    {
        id: 1,
        name: '1111',
        xuhao: '1.1',
        children: [
            id: 2,
            name: '2222',
            xuhao: '1.1.1',
            children: [...]
        ]
    },
    {
        id: 3,
        name: '3333',
        xuhao: '1.2',
        children: [
            id: 4,
            name: '4444',
            xuhao: '1.2.1',
            children: [...]
        ]
    }
]

图片描述

阅读 2.1k
1 个回答
function generateSerial(arr, parentSerial) {
    arr.forEach((item, index) => {
        const serial = `${parentSerial}${index + 1}`;
        item.serial = serial;
        if (item.children) {
            generateSerial(item.children, `${serial}.`);
        }
    });
}

generateSerial(yourArr, '');
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题