함수를 기반으로 배열 인덱싱

Beginner

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

소개

이 랩에서는 JavaScript 의 indexBy 함수를 살펴봅니다. 이 함수는 제공된 함수를 기반으로 배열에서 객체를 생성합니다. 이 랩의 목적은 Array.prototype.reduce()를 사용하는 방법과 배열의 각 값에 함수를 적용하여 키 - 값 쌍을 생성하는 방법을 이해하도록 돕는 것입니다. 이 랩을 마치면 indexBy를 사용하여 배열의 값을 키에 매핑하고 새로운 객체를 생성할 수 있게 됩니다.

배열 인덱싱 함수

함수를 사용하여 배열을 인덱싱하려면 다음 단계를 따르세요.

  1. 터미널/SSH 를 열고 node를 입력하여 코딩 연습을 시작합니다.
  2. Array.prototype.reduce()를 사용하여 배열에서 객체를 생성합니다.
  3. 제공된 함수를 배열의 각 값에 적용하여 키를 생성하고, 키 - 값 쌍을 객체에 추가합니다.

다음은 예시 코드 조각입니다.

const indexBy = (arr, fn) =>
  arr.reduce((obj, v, i) => {
    obj[fn(v, i, arr)] = v;
    return obj;
  }, {});

이 함수는 다음과 같이 사용할 수 있습니다.

indexBy(
  [
    { id: 10, name: "apple" },
    { id: 20, name: "orange" }
  ],
  (x) => x.id
);
// { '10': { id: 10, name: 'apple' }, '20': { id: 20, name: 'orange' } }

이 함수는 제공된 함수를 사용하여 각 값을 키에 매핑하여 배열에서 객체를 생성합니다. 결과 객체는 키가 함수에 의해 생성되고 값이 원래 배열 요소인 키 - 값 쌍을 포함합니다.

요약

축하합니다! 함수 기반 배열 인덱싱 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 실력을 향상시킬 수 있습니다.