Mark Denn
Mark Denn

Reputation: 2304

Flatten a multi dimensional array

I am building an Angular 9 app. In this app I am trying to build a Gantt chart and in this chart I am trying to plot out boxes.

In order to do this I need to flatten this multi dimensional array.

How can I take this array:

[
    [{
        "title": "01"
    }, {
        "title": "02"
    }, {
        "title": "03"
    }, {
        "title": "04"
    }, {
        "title": "05"
    }, {
        "title": "06"
    }, {
        "title": "07"
    }, {
        "title": "08"
    }, {
        "title": "09"
    }, {
        "title": "10"
    }, {
        "title": "11"
    }, {
        "title": "12"
    }, {
        "title": "13"
    }, {
        "title": "14"
    }, {
        "title": "15"
    }, {
        "title": "16"
    }, {
        "title": "17"
    }, {
        "title": "18"
    }, {
        "title": "19"
    }, {
        "title": "20"
    }, {
        "title": "21"
    }, {
        "title": "22"
    }, {
        "title": "23"
    }, {
        "title": "24"
    }, {
        "title": "25"
    }, {
        "title": "26"
    }, {
        "title": "27"
    }, {
        "title": "28"
    }, {
        "title": "29"
    }, {
        "title": "30"
    }, {
        "title": "31"
    }],
    [{
        "title": "01"
    }, {
        "title": "02"
    }, {
        "title": "03"
    }, {
        "title": "04"
    }, {
        "title": "05"
    }, {
        "title": "06"
    }, {
        "title": "07"
    }, {
        "title": "08"
    }, {
        "title": "09"
    }, {
        "title": "10"
    }, {
        "title": "11"
    }, {
        "title": "12"
    }, {
        "title": "13"
    }, {
        "title": "14"
    }, {
        "title": "15"
    }, {
        "title": "16"
    }, {
        "title": "17"
    }, {
        "title": "18"
    }, {
        "title": "19"
    }, {
        "title": "20"
    }, {
        "title": "21"
    }, {
        "title": "22"
    }, {
        "title": "23"
    }, {
        "title": "24"
    }, {
        "title": "25"
    }, {
        "title": "26"
    }, {
        "title": "27"
    }, {
        "title": "28"
    }, {
        "title": "29"
    }]
]

And convert it to this array:

[{
    "title": "01"
}, {
    "title": "02"
}, {
    "title": "03"
}, {
    "title": "04"
}, {
    "title": "05"
}, {
    "title": "06"
}, {
    "title": "07"
}, {
    "title": "08"
}, {
    "title": "09"
}, {
    "title": "10"
}, {
    "title": "11"
}, {
    "title": "12"
}, {
    "title": "13"
}, {
    "title": "14"
}, {
    "title": "15"
}, {
    "title": "16"
}, {
    "title": "17"
}, {
    "title": "18"
}, {
    "title": "19"
}, {
    "title": "20"
}, {
    "title": "21"
}, {
    "title": "22"
}, {
    "title": "23"
}, {
    "title": "24"
}, {
    "title": "25"
}, {
    "title": "26"
}, {
    "title": "27"
}, {
    "title": "28"
}, {
    "title": "29"
}, {
    "title": "30"
}, {
    "title": "31"
}, {
    "title": "01"
}, {
    "title": "02"
}, {
    "title": "03"
}, {
    "title": "04"
}, {
    "title": "05"
}, {
    "title": "06"
}, {
    "title": "07"
}, {
    "title": "08"
}, {
    "title": "09"
}, {
    "title": "10"
}, {
    "title": "11"
}, {
    "title": "12"
}, {
    "title": "13"
}, {
    "title": "14"
}, {
    "title": "15"
}, {
    "title": "16"
}, {
    "title": "17"
}, {
    "title": "18"
}, {
    "title": "19"
}, {
    "title": "20"
}, {
    "title": "21"
}, {
    "title": "22"
}, {
    "title": "23"
}, {
    "title": "24"
}, {
    "title": "25"
}, {
    "title": "26"
}, {
    "title": "27"
}, {
    "title": "28"
}, {
    "title": "29"
}]

Upvotes: 1

Views: 80

Answers (1)

phi-rakib
phi-rakib

Reputation: 3302

You could use array flat method.

const data = [
  [
    {
      title: '01',
    },
    {
      title: '02',
    },
    {
      title: '03',
    },
    {
      title: '04',
    },
    {
      title: '05',
    },
    {
      title: '06',
    },
    {
      title: '07',
    },
    {
      title: '08',
    },
    {
      title: '09',
    },
    {
      title: '10',
    },
    {
      title: '11',
    },
    {
      title: '12',
    },
    {
      title: '13',
    },
    {
      title: '14',
    },
    {
      title: '15',
    },
    {
      title: '16',
    },
    {
      title: '17',
    },
    {
      title: '18',
    },
    {
      title: '19',
    },
    {
      title: '20',
    },
    {
      title: '21',
    },
    {
      title: '22',
    },
    {
      title: '23',
    },
    {
      title: '24',
    },
    {
      title: '25',
    },
    {
      title: '26',
    },
    {
      title: '27',
    },
    {
      title: '28',
    },
    {
      title: '29',
    },
    {
      title: '30',
    },
    {
      title: '31',
    },
  ],
  [
    {
      title: '01',
    },
    {
      title: '02',
    },
    {
      title: '03',
    },
    {
      title: '04',
    },
    {
      title: '05',
    },
    {
      title: '06',
    },
    {
      title: '07',
    },
    {
      title: '08',
    },
    {
      title: '09',
    },
    {
      title: '10',
    },
    {
      title: '11',
    },
    {
      title: '12',
    },
    {
      title: '13',
    },
    {
      title: '14',
    },
    {
      title: '15',
    },
    {
      title: '16',
    },
    {
      title: '17',
    },
    {
      title: '18',
    },
    {
      title: '19',
    },
    {
      title: '20',
    },
    {
      title: '21',
    },
    {
      title: '22',
    },
    {
      title: '23',
    },
    {
      title: '24',
    },
    {
      title: '25',
    },
    {
      title: '26',
    },
    {
      title: '27',
    },
    {
      title: '28',
    },
    {
      title: '29',
    },
  ],
];

const ret = data.flat();
console.log(ret);

Upvotes: 4

Related Questions