JavaScript 값을 기준으로 배열 분할

Beginner

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

소개

이 랩에서는 JavaScript 를 사용하여 주어진 값을 기준으로 배열을 분할하는 방법을 살펴봅니다. 이 랩에서는 Array.prototype.reduce() 메서드와 Array.prototype.push() 메서드를 사용하여 주어진 필터에 따라 두 그룹에 요소를 추가하는 방법을 보여줍니다. 이 랩을 마치면 JavaScript 에서 배열을 조작하는 방법에 대한 이해도가 높아질 것입니다.

배열을 두 그룹으로 분할하는 함수

이 함수를 사용하여 값을 기준으로 배열을 두 그룹으로 분할하려면 다음 단계를 따르세요.

  1. 터미널/SSH 를 열고 node를 입력하여 코딩 연습을 시작합니다.
  2. 주어진 filter 배열의 결과에 따라 값을 두 그룹으로 분할하는 bifurcate() 함수를 사용합니다.
  3. 함수를 구현하려면 Array.prototype.reduce()Array.prototype.push()를 사용하여 filter 배열을 기반으로 그룹에 요소를 추가합니다.
  4. filter가 모든 요소에 대해 truthy 값을 가지면 첫 번째 그룹에 추가하고, 그렇지 않으면 두 번째 그룹에 추가합니다.

다음은 bifurcate() 함수의 코드입니다.

const bifurcate = (arr, filter) =>
  arr.reduce(
    (acc, val, i) => (acc[filter[i] ? 0 : 1].push(val), acc),
    [[], []]
  );

bifurcate() 함수를 값의 배열과 해당 필터 배열과 함께 호출하여 값을 두 그룹으로 분할할 수 있습니다. 예를 들어:

bifurcate(["beep", "boop", "foo", "bar"], [true, true, false, true]);
// [ ['beep', 'boop', 'bar'], ['foo'] ]

요약

축하합니다! 값을 기준으로 배열 분할 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.