반복 가능한 객체를 작은 배열로 청크하기

Beginner

This tutorial is from open-source community. Access the source code

소개

이 랩에서는 JavaScript 를 사용하여 반복 가능한 객체 (iterable) 를 지정된 크기의 더 작은 배열로 청크 (chunking) 하는 개념을 탐구합니다. 반복 가능한 객체와 크기 매개변수를 입력으로 받아, 각 배열에 최대 size 개의 요소를 포함하는 더 작은 배열의 반복 가능한 객체를 반환하는 함수를 구현할 것입니다. 이 기술은 대규모 데이터 세트를 처리하기 위해 더 작은 청크로 분할하거나, 한 번에 전송되는 데이터 양을 줄여 네트워크 요청을 최적화하는 등 다양한 응용 분야에 유용할 수 있습니다.

반복 가능한 객체 청크하기 (Chunk Iterable)

반복 가능한 객체를 지정된 크기의 더 작은 배열로 청크하려면 다음 단계를 따르세요.

  1. 터미널/SSH 를 열고 node를 입력하여 코딩 연습을 시작합니다.
  2. 주어진 반복 가능한 객체에 대해 for...of 루프를 사용하고, Array.prototype.push()를 사용하여 각 새 값을 현재 chunk에 추가합니다.
  3. Array.prototype.length를 사용하여 현재 chunk의 크기가 원하는 size인지 확인하고, 그렇다면 값을 yield합니다.
  4. Array.prototype.length를 사용하여 마지막 chunk를 확인하고, 비어 있지 않은 경우 yield합니다.
  5. 다음 코드를 사용합니다.
const chunkify = function* (itr, size) {
  let chunk = [];
  for (const v of itr) {
    chunk.push(v);
    if (chunk.length === size) {
      yield chunk;
      chunk = [];
    }
  }
  if (chunk.length) yield chunk;
};
  1. 이 코드를 사용하여 함수를 테스트합니다.
const x = new Set([1, 2, 1, 3, 4, 1, 2, 5]);
[...chunkify(x, 2)]; // [[1, 2], [3, 4], [5]]

요약

축하합니다! 반복 가능한 객체 청크하기 (Chunk Iterable) 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 실력을 향상시킬 수 있습니다.