매핑된 배열 합집합

Beginner

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

소개

이 랩에서는 실습을 통해 JavaScript 프로그래밍 개념을 탐구합니다. 이 랩은 참가자들이 함수, 배열, 객체, 루프와 같은 핵심 JavaScript 개념에 대한 탄탄한 이해를 구축하는 데 도움을 주기 위해 설계되었습니다. 일련의 챌린지와 프로젝트를 통해 참가자들은 배운 내용을 적용하고 JavaScript 개발자로서의 자신감을 키울 기회를 갖게 됩니다.

제공된 매핑 함수로 배열을 결합하는 함수

코딩을 시작하려면 터미널/SSH 를 열고 node를 입력하세요.

이 함수는 제공된 매핑 함수를 두 입력 배열의 각 요소에 적용한 후, 두 입력 배열 중 하나에 존재하는 요소의 배열을 반환합니다.

이를 달성하기 위한 단계는 다음과 같습니다.

  1. 첫 번째 입력 배열 a의 모든 값에 매핑 함수를 적용하여 새로운 Set을 생성합니다.
  2. 매핑 함수를 적용했을 때 이전에 생성된 Set의 값과 일치하지 않는 b의 모든 요소로 구성된 다른 Set을 생성합니다.
  3. 두 세트를 결합하고 배열로 변환합니다.
  4. 결과 배열을 반환합니다.

unionBy 함수의 코드는 다음과 같습니다.

const unionBy = (a, b, fn) => {
  const setA = new Set(a.map(fn));
  return Array.from(new Set([...a, ...b.filter((x) => !setA.has(fn(x)))]));
};

unionBy 함수를 사용하는 몇 가지 예는 다음과 같습니다.

unionBy([2.1], [1.2, 2.3], Math.floor); // Output: [2.1, 1.2]
unionBy([{ id: 1 }, { id: 2 }], [{ id: 2 }, { id: 3 }], (x) => x.id);
// Output: [{ id: 1 }, { id: 2 }, { id: 3 }]

요약

축하합니다! Mapped Array Union 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.