typescript에서 두 개의 배열 객체를 동적으로 병합하는 방법은 무엇입니까?

무투 카니 K

나는 이와 같은 두 개의 배열이 있습니다.

array1 = [
    {
        Name: "BMW car",
        id: "BMW",
        group: "car",
        children: [
            { Name: "320 Mod", id: "320", group: "BMW" },
            { Name: "X3 Mod", id: "X3", group: "BMW" },
            { Name: "X5 Mod", id: "X5", group: "BMW" }
        ]
    }
];

array2 = [
    {
        id: "BMW",
        description: "parent car BMW",
        children: [
            { id: "320", description: "parent car BMW, model 320", },
            { id: "X3", description: "parent car BMW model X3", },
            { id: "X5", description: "parent car BMW Model X5", }
        ]
    }
];

결과 배열은 다음과 같아야합니다.

arrayObj = [
    {
        Name: "BMW car",
        id: "BMW",
        group: "car",
        description: "parent car BMW",
        children: [
            { Name: "320 Mod", id: "320", group: "BMW", description: "parent car BMW model 320", },
            { Name: "X3 Mod", id: "X3", group: "BMW", description: "parent car BMW model X3", },
            { Name: "X5 Mod", id: "X5", group: "BMW", description: "parent car BMW model X5", }
        ]
    }
];

아래 코드를 시도했지만 자식 값이 병합되지 않습니다. 누구든지 나를 도울 수 있습니까?

var resultArray = array1.reduce((arr, e) => {
    arr.push(Object.assign({}, e, array2.find(a => a.id == e.id)))
    return arr;
}, [])
MoxxiManagarm

이것을 사용할 수 있습니다

var array1 = [
    {
        Name: "BMW car",
        id: "BMW",
        group: "car",
        children: [
            { Name: "320 Mod", id: "320", group: "BMW" },
            { Name: "X3 Mod", id: "X3", group: "BMW" },
            { Name: "X5 Mod", id: "X5", group: "BMW" }
        ]
    }
];

var array2 = [
    {
        id: "BMW",
        description: "parent car BMW",
        children: [
            { id: "320", description: "parent car BMW, model 320", },
            { id: "X3", description: "parent car BMW model X3", },
            { id: "X5", description: "parent car BMW Model X5", }
        ]
    }
];

var result = array1.map(el1 => {
  var el2 = array2.find(el => el1.id === el.id);
  return { ...el1, ...el2, children: el1.children.map(child1 => ({ ...child1, ...el2.children.find(child2 => child2.id === child1.id) })) };
});

console.log(result);

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

키로 두 개의 객체 배열을 병합하고 단일 객체 배열에 고유 키를 유지하는 방법은 무엇입니까?

분류에서Dev

두 개의 다른 배열에있는 개체를 단일 개체 배열로 병합하는 방법은 무엇입니까?

분류에서Dev

두 개의 배열 버퍼를 하나로 병합하는 방법은 무엇입니까?

분류에서Dev

JavaScript에서 두 개의 종속 배열을 객체로 줄이는 방법은 무엇입니까?

분류에서Dev

다음 JSON 객체에서 데이터를 두 개의 개별 배열로 가져 오는 가장 효율적인 방법은 무엇입니까?

분류에서Dev

서로 다른 두 배열의 객체를 비교하는 방법은 무엇입니까?

분류에서Dev

두 배열의 음수를 하나의 배열로 병합하는 방법은 무엇입니까?

분류에서Dev

Google 차트에서 사용할 두 개의 키를 사용하여 JSON 객체를 JavaScript 배열로 변환하는 방법은 무엇입니까?

분류에서Dev

2 차원에서 두 개의 3D 배열을 효율적으로 병합하는 방법은 무엇입니까?

분류에서Dev

두 번째 배열의 첫 번째 배열에서 객체를 찾는 방법은 무엇입니까? Swift iOS

분류에서Dev

동일한 배열의 두 키를 비교하여 배열에서 중복 객체를 제거하는 방법은 무엇입니까?

분류에서Dev

Oracle에서 두 개의 결과 열을 열로 병합하는 방법은 무엇입니까?

분류에서Dev

Android에서 두 개의 뷰를 동 기적으로 이동하는 방법은 무엇입니까?

분류에서Dev

객체 배열에 저장된 두 개의 동일한 필드를 기반으로 결합하는 동안 몽구스 집계에서 필터링하는 방법은 무엇입니까?

분류에서Dev

Rails에서이 두 개의 다른 has_manys를 하나로 병합하는 방법은 무엇입니까?

분류에서Dev

Qt에서 두 개의 QJsonObject를 병합하는 방법은 무엇입니까?

분류에서Dev

Underscore 또는 Lodash를 사용하지 않고 자바 스크립트에서 두 개의 객체 배열을 결합하는 방법은 무엇입니까?

분류에서Dev

C #에서 두 개의 콤보 상자를 동적으로 연결하는 방법은 무엇입니까?

분류에서Dev

최대 절전 모드에서 동일한 객체를 선택하고 업데이트하는 방법은 무엇입니까? 프록시를 두 개의 열린 세션과 연결하려고 불법적으로 시도했습니다.

분류에서Dev

두 개의 속성에서 두 개의 객체 배열을 결합하는 더 좋은 방법은 무엇입니까?

분류에서Dev

두 개의 LINQ를 하나로 병합하는 방법은 무엇입니까?

분류에서Dev

Lodash를 사용하여 두 개 이상의 키로 그룹화하고 객체 배열의 값을 합하는 방법은 무엇입니까?

분류에서Dev

개별 객체 내에있는 두 개의 배열을 속성으로 병합하는 방법

분류에서Dev

MongoDB에서 여러 기준으로 배열의 객체를 쿼리하는 방법은 무엇입니까?

분류에서Dev

두 열의 일치를 기반으로 두 파일을 병합하는 방법은 무엇입니까?

분류에서Dev

두 개의 xml 문서를 (덮어 쓰기로) 병합하는 방법은 무엇입니까?

분류에서Dev

ID를 기반으로 두 개의 개체 목록을 병합하는 방법은 무엇입니까?

분류에서Dev

vb.net에서 두 개의 JSON 개체를 병합하는 방법은 무엇입니까?

분류에서Dev

동일한 객체에 두 개의 텍스처를 샘플링하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    키로 두 개의 객체 배열을 병합하고 단일 객체 배열에 고유 키를 유지하는 방법은 무엇입니까?

  2. 2

    두 개의 다른 배열에있는 개체를 단일 개체 배열로 병합하는 방법은 무엇입니까?

  3. 3

    두 개의 배열 버퍼를 하나로 병합하는 방법은 무엇입니까?

  4. 4

    JavaScript에서 두 개의 종속 배열을 객체로 줄이는 방법은 무엇입니까?

  5. 5

    다음 JSON 객체에서 데이터를 두 개의 개별 배열로 가져 오는 가장 효율적인 방법은 무엇입니까?

  6. 6

    서로 다른 두 배열의 객체를 비교하는 방법은 무엇입니까?

  7. 7

    두 배열의 음수를 하나의 배열로 병합하는 방법은 무엇입니까?

  8. 8

    Google 차트에서 사용할 두 개의 키를 사용하여 JSON 객체를 JavaScript 배열로 변환하는 방법은 무엇입니까?

  9. 9

    2 차원에서 두 개의 3D 배열을 효율적으로 병합하는 방법은 무엇입니까?

  10. 10

    두 번째 배열의 첫 번째 배열에서 객체를 찾는 방법은 무엇입니까? Swift iOS

  11. 11

    동일한 배열의 두 키를 비교하여 배열에서 중복 객체를 제거하는 방법은 무엇입니까?

  12. 12

    Oracle에서 두 개의 결과 열을 열로 병합하는 방법은 무엇입니까?

  13. 13

    Android에서 두 개의 뷰를 동 기적으로 이동하는 방법은 무엇입니까?

  14. 14

    객체 배열에 저장된 두 개의 동일한 필드를 기반으로 결합하는 동안 몽구스 집계에서 필터링하는 방법은 무엇입니까?

  15. 15

    Rails에서이 두 개의 다른 has_manys를 하나로 병합하는 방법은 무엇입니까?

  16. 16

    Qt에서 두 개의 QJsonObject를 병합하는 방법은 무엇입니까?

  17. 17

    Underscore 또는 Lodash를 사용하지 않고 자바 스크립트에서 두 개의 객체 배열을 결합하는 방법은 무엇입니까?

  18. 18

    C #에서 두 개의 콤보 상자를 동적으로 연결하는 방법은 무엇입니까?

  19. 19

    최대 절전 모드에서 동일한 객체를 선택하고 업데이트하는 방법은 무엇입니까? 프록시를 두 개의 열린 세션과 연결하려고 불법적으로 시도했습니다.

  20. 20

    두 개의 속성에서 두 개의 객체 배열을 결합하는 더 좋은 방법은 무엇입니까?

  21. 21

    두 개의 LINQ를 하나로 병합하는 방법은 무엇입니까?

  22. 22

    Lodash를 사용하여 두 개 이상의 키로 그룹화하고 객체 배열의 값을 합하는 방법은 무엇입니까?

  23. 23

    개별 객체 내에있는 두 개의 배열을 속성으로 병합하는 방법

  24. 24

    MongoDB에서 여러 기준으로 배열의 객체를 쿼리하는 방법은 무엇입니까?

  25. 25

    두 열의 일치를 기반으로 두 파일을 병합하는 방법은 무엇입니까?

  26. 26

    두 개의 xml 문서를 (덮어 쓰기로) 병합하는 방법은 무엇입니까?

  27. 27

    ID를 기반으로 두 개의 개체 목록을 병합하는 방법은 무엇입니까?

  28. 28

    vb.net에서 두 개의 JSON 개체를 병합하는 방법은 무엇입니까?

  29. 29

    동일한 객체에 두 개의 텍스처를 샘플링하는 방법은 무엇입니까?

뜨겁다태그

보관