JavaScript takeRightUntil 함수 탐구

Beginner

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

소개

이 랩에서는 JavaScript 의 takeRightUntil 함수를 살펴봅니다. 이 함수는 주어진 조건이 충족될 때까지 배열의 끝에서 요소를 제거하고 제거된 요소를 반환합니다. 이 함수가 어떻게 작동하는지, 그리고 코드에서 어떻게 구현할 수 있는지 살펴보겠습니다.

조건이 충족될 때까지 배열 요소 끝에서 제거하기

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

이 함수는 전달된 함수가 true를 반환할 때까지 배열의 끝에서 요소를 제거한 다음 제거된 요소를 반환합니다.

작동 방식은 다음과 같습니다.

  • 먼저, spread operator (...) 와 Array.prototype.reverse()를 사용하여 배열의 복사본을 반전시킵니다.
  • 다음으로, Array.prototype.entries()에 대한 for...of 루프를 사용하여 함수에서 반환된 값이 truthy 가 될 때까지 반전된 복사본을 반복합니다.
  • 그 후, Array.prototype.slice()를 사용하여 제거된 요소를 반환합니다.
  • 콜백 함수 fn은 요소의 값인 단일 인수를 받습니다.

다음은 코드입니다.

const takeRightUntil = (arr, fn) => {
  for (const [i, val] of [...arr].reverse().entries())
    if (fn(val)) return i === 0 ? [] : arr.slice(-i);
  return arr;
};

다음은 이 함수를 사용하는 예입니다.

takeRightUntil([1, 2, 3, 4], (n) => n < 3); // [3, 4]

요약

축하합니다! 조건이 충족될 때까지 배열 요소 끝에서 제거하기 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.