I have an array that looks like below.
[
{
id: 1,
name: "task 1",
children: [
{
id: 2,
name: "task 1.1",
children: []
}
]
},
{
id: 1,
name: "task 2",
children: [
{
id: 2,
name: "task 2.1",
children: [
{
id: 2,
name: "task 2.1.1",
children: []
}
]
}
]
},
{
id: 1,
name: "task 3",
children: []
},
]
How can I generate a node number for each item according to the depth they are at? Like, the first task's number would be 1, its child would be 1.1, and so on?
Expected output:
[
{
id: 1,
name: "task 1",
taskNumber: "1",
children: [
{
id: 2,
name: "task 1.1",
children: [],
taskNumber: "1.1",
}
]
},
{
id: 1,
name: "task 2",
taskNumber: "2",
children: [
{
id: 2,
name: "task 2.1",
taskNumber: "2.1",
children: [
{
id: 2,
name: "task 2.1.1",
taskNumber: "2.1.1",
children: []
}
]
}
]
},
{
id: 1,
name: "task 3",
taskNumber: "3",
children: []
},
]
Please note that the task name can be anything. I want to recursively go through each object and find its task number