[typescript] 반복문을 사용한 데이터 그룹화

배열 또는 객체와 같은 데이터를 그룹화하는 것은 프로그래밍에서 자주 하는 작업 중 하나입니다. JavaScript나 TypeScript에서는 reduce() 메서드를 사용하여 배열의 요소들을 그룹화할 수 있습니다.

아래는 간단한 배열을 날짜를 기준으로 그룹화하는 예제입니다.

// 간단한 데이터셋
const data = [
  { date: '2022-01-01', value: 100 },
  { date: '2022-01-01', value: 150 },
  { date: '2022-01-02', value: 200 },
  { date: '2022-01-02', value: 250 },
  { date: '2022-01-03', value: 300 },
];

// 데이터 그룹화
const groupedData = data.reduce((result, currentValue) => {
  (result[currentValue.date] = result[currentValue.date] || []).push(currentValue);
  return result;
}, {});

console.log(groupedData);

위의 예제에서는 reduce() 메서드를 사용하여 data 배열을 date를 기준으로 그룹화했습니다. reduce 메서드는 초기값으로 빈 객체 {}를 사용하고, 각 날짜별로 값을 누적시켜 그룹화된 데이터를 얻을 수 있습니다.

결과를 출력하면 아래와 같이 나타납니다.

{
  '2022-01-01': [
    { date: '2022-01-01', value: 100 },
    { date: '2022-01-01', value: 150 }
  ],
  '2022-01-02': [
    { date: '2022-01-02', value: 200 },
    { date: '2022-01-02', value: 250 }
  ],
  '2022-01-03': [
    { date: '2022-01-03', value: 300 }
  ]
}

이와 같이 reduce() 메서드를 이용하여 TypeScript에서 데이터를 그룹화하는 방법을 살펴보았습니다.

참고 자료

위 자료들은 reduce() 메서드 및 TypeScript 배열 처리에 대한 자세한 정보를 포함하고 있습니다.