부모 및 자식 관계가 있지만 매우 직설적이지 않은 객체의 플랫 배열이 있습니다. 객체의자바 스크립트의 플랫 어레이에서 깊이 수준 객체 빌드
모든 항목은 FromEntityId (부모)와 ToEntityId (아이) 먼저 내가 다른 Oject의 ToEntityId의에 존재하지 않는 객체의 FromEntityId과 어린이 것입니다 부모 또는 모든 부모를 찾을 필요가있다 여기에 아래의 ToEntityId
해당 부모 개체의 FromEntityId의 OriginalData
OriginalData = [
{
"FromEntityId": 266,
"ToEntityId": 348,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 353,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 365,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 350,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 354,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 361,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 364,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 372,
"Status": "NULL"
},
{
"FromEntityId": 362,
"ToEntityId": 357,
"Status": "NULL"
},
{
"FromEntityId": 365,
"ToEntityId": 369,
"Status": "NULL"
},
{
"FromEntityId": 369,
"ToEntityId": 670,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 349,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 359,
"Status": "NULL"
},
{
"FromEntityId": 350,
"ToEntityId": 351,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 352,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 355,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 362,
"Status": "NULL"
},
{
"FromEntityId": 359,
"ToEntityId": 365,
"Status": "NULL"
},
{
"FromEntityId": 361,
"ToEntityId": 358,
"Status": "NULL"
},
{
"FromEntityId": 273,
"ToEntityId": 356,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 385,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 389,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 388,
"Status": "NULL"
},
{
"FromEntityId": 266,
"ToEntityId": 382,
"Status": "NULL"
},
{
"FromEntityId": 369,
"ToEntityId": 380,
"Status": "NULL"
},
{
"FromEntityId": 273,
"ToEntityId": 381,
"Status": "NULL"
},
{
"FromEntityId": 273,
"ToEntityId": 672,
"Status": "NULL"
}
]
여기에 아래의 FinalData를
finalData = [
{
"FromEntityId": 266,
"Status": "NULL",
"depthLevel": 0,
"children": [
{
"FromEntityId": 266,
"ToEntityId": 348,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 353,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 365,
"Status": "NULL",
"depthLevel": 1,
"children": [
{
"FromEntityId": 365,
"ToEntityId": 369,
"Status": "NULL",
"depthLevel": 2,
"children": [
{
"FromEntityId": 369,
"ToEntityId": 670,
"Status": "NULL",
"depthLevel": 3
},
{
"FromEntityId": 369,
"ToEntityId": 380,
"Status": "NULL",
"depthLevel": 3
}
]
}
]
},
{
"FromEntityId": 266,
"ToEntityId": 385,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 389,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 388,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 382,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 349,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 266,
"ToEntityId": 359,
"Status": "NULL",
"depthLevel": 1,
"children": [
{
"FromEntityId": 359,
"ToEntityId": 354,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 361,
"Status": "NULL",
"depthLevel": 2,
"children": [
{
"FromEntityId": 361,
"ToEntityId": 358,
"Status": "NULL",
"depthLevel": 3
}
]
},
{
"FromEntityId": 359,
"ToEntityId": 364,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 372,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 352,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 355,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 362,
"Status": "NULL",
"depthLevel": 2,
"children": [
{
"FromEntityId": 362,
"ToEntityId": 357,
"Status": "NULL",
"depthLevel": 3
}
]
},
{
"FromEntityId": 359,
"ToEntityId": 365,
"Status": "NULL",
"depthLevel": 2
},
{
"FromEntityId": 359,
"ToEntityId": 350,
"Status": "NULL",
"depthLevel": 2,
"children": [
{
"FromEntityId": 350,
"ToEntityId": 351,
"Status": "NULL",
"depthLevel": 3
}
]
}
]
}
]
},
{
"FromEntityId": 273,
"Status": "NULL",
"depthLevel": 0,
"children": [
{
"FromEntityId": 273,
"ToEntityId": 356,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 273,
"ToEntityId": 381,
"Status": "NULL",
"depthLevel": 1
},
{
"FromEntityId": 273,
"ToEntityId": 672,
"Status": "NULL",
"depthLevel": 1
}
]
}
];
입니다 수
JavaScript에서 Array의 reduce 메서드를 사용하려고하지만 여전히 Desirable 출력을 얻을 수 없습니다.
감사하지만 나는 확실히 해결책을 마련하기 위해 올해 나 걸릴 수 있습니다 원하는 솔루션에 대한 정말 확신하지 않다, ... – bvmCoder