Suppose if i have an input data like:
[
{
name: 'rohan',
subName: [
{
name: 'rohan_abc',
subName: [
{
name: 'rohan_abc_abc',
subName: []
}]
},
{
name: 'rohan_abc',
subName: []
},{
name: 'rohan_abc_abc',
subName: []
}]
},
{
name: 'rohan',
subName: [
{
name: 'rohan_abc',
subName: [
{
name: 'rohan_abc_abc',
subName: [{
name: 'rohan_abc_abc_abc',
subName: []
}]
}]
},
{
name: 'rohan_bcd',
subName: []
},{
name: 'rohan_abc_abc',
subName: []
}]
}]
The output should be like
[
{
name: 'rohan',
count: 2,
subName: [
{
name: 'rohan_abc',
count: 3,
subName: [
{
name: 'rohan_abc_abc',
count: 2
subName: [
{
name: 'rohan_abc_abc_abc',
count: 1
}]
}]
},
{
name: 'rohan_abc_abc',
count: 2
subName: []
},
{
name: 'rohan_bcd',
count: 1
}]
}]
if the same name is repeated in the same layer then the count should increase. Otherwise, the count should remain 1.
In above example: rohan_abc_abc is occurred at 2 different levels so that they have different count at respective level. Hoping to get positive feedbacks. Thank you!!!