Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 map 또는 reduce를 사용하여 2D 배열을 객체로 변환

<시간/>

어떤 사람들의 나이에 대한 일부 데이터가 포함된 2차원 배열이 있다고 가정해 보겠습니다.

데이터는 다음 2D 배열로 제공됩니다.

const data = [
   ['Rahul',23],
   ['Vikky',27],
   ['Sanjay',29],
   ['Jay',19],
   ['Dinesh',21],
   ['Sandeep',45],
   ['Umesh',32],
   ['Rohit',28],
];

이 2차원 데이터 배열을 받아 각 하위 배열의 첫 번째 요소로 key를 사용하여 객체를 반환하는 함수를 작성해야 합니다. 즉, 문자열과 값을 두 번째 요소로 반환합니다.

Array.prototype.reduce() 메서드를 사용하여 이 객체를 구성하고 이를 수행하는 코드는 -

예시

const data = [
   ['Rahul',23],
   ['Vikky',27],
   ['Sanjay',29],
   ['Jay',19],
   ['Dinesh',21],
   ['Sandeep',45],
   ['Umesh',32],
   ['Rohit',28],
];
const constructObject = arr => {
   return arr.reduce((acc, val) => {
      const [key, value] = val;
      acc[key] = value;
      return acc;
   }, {});
};
console.log(constructObject(data));

출력

콘솔의 출력은 -

{
   Rahul: 23,
   Vikky: 27,
   Sanjay: 29,
   Jay: 19,
   Dinesh: 21,
   Sandeep: 45,
   Umesh: 32,
   Rohit: 28
}