2 배열이 있는데 첫 번째 배열의 객체에서 ID와 일치하는 배열 객체를 두 번째 배열에서 찾으려고합니다. 거기에서 기본 객체에 일치하는 객체를 추가해야합니다. 또한 키 값으로 상위 3 개의 일치하는 객체 만 가져와야합니다. 나는 Underscore로 시도했지만 일치하는 배열 만 병합합니다. Heres는 나가 달성 할 필요가있다, 어떤 도움든지 중대 할.값을 일치시키고 기본 배열로 병합하여 보조 배열을 검색합니다.
var primaryArray = [
{
"Name": "Main 1",
"Id": "1"
},
{
"Name": "Main 2",
"Id": "2"
}
]
var secondaryArray = [
{
"name": "Person 1",
"mainitemId": "1",
"count": 120
},
{
"name": "Person 2",
"mainitemId": "1",
"count": 80
},
{
"name": "Person 3",
"mainitemId": "1",
"count": 125
},
{
"name": "Person 4",
"mainitemId": "1",
"count": 130
},
{
"name": "Person 5",
"mainitemId": "2",
"count": 90
},
{
"name": "Person 6",
"mainitemId": "2",
"count": 85
},
{
"name": "Person 7",
"mainitemId": "2",
"count": 105
},
{
"name": "Person 8",
"mainitemId": "2",
"count": 110
}
]
var resultArray = [
{
"Name": "Main 1",
"Id": 1,
"people": [
{
"name": "Person 4",
"mainitemId": "1",
"count": 130
},
{
"name": "Person 3",
"mainitemId": "1",
"count": 125
},
{
"name": "Person 1",
"mainitemId": "1",
"count": 120
}
]
},
{
"Name": "Main 2",
"Id": 2,
"people": [
{
"name": "Person 8",
"mainitemId": "2",
"count": 110
},
{
"name": "Person 7",
"mainitemId": "2",
"count": 105
},
{
"name": "Person 5",
"mainitemId": "2",
"count": 90
}
]
}
]
당신이 시도 것을 ? –
여러 가지를 찾고, 배열을 병합하고, 객체 값으로 검색하고, 가능하면 상위 3을 결정하기 위해 정렬합니다 (** 무엇이 top3을 결정합니까? **). 웹에는 각 부분을 수행하는 방법에 대한 많은 예제가 있습니다. 하나를 선택하여 사용해보십시오. 코드에 문제가있는 경우 여기에 게시하고 살펴보십시오. 또한 [** 좋은 질문을하는 법 **] (https://stackoverflow.com/help/how-to-ask)을 참조하십시오. 해당되는 경우 문제가있는 코드를 사용하십시오. [* * 최소, 완전하고 검증 가능한 예제를 만드는 방법 **] (https://stackoverflow.com/help/mcve) – Nope