재귀를 사용하여 카운트다운 만들기(FreeCodecamp 참고 사항)
unction countup(n) {
if (n < 1) {
return [];
} else {
const countArray = countup(n - 1);
countArray.push(n);
return countArray;
}
}
console.log(countup(5));
위의 기능은 여기에 가장 잘 설명되어 있습니다.
주목해야 할 중요한 점은 배열 요소가 1부터 추가되기 시작하고 countup(4)이 countup(1)이 완료될 때까지 대기한다는 것입니다.
위의 예를 사용하고 카운트다운 함수를 만들어 countdown(n)에서 n을 전달할 때 배열에서 n에서 1개의 숫자를 반환하도록 합니다.
고려해야 할 사항, unshift에 대해 전혀 모른다면 함수가 호출될 때마다 새 배열을 선언하여 배열에 요소를 추가하려고 할 것입니다. 작동하지 않지만 사용 방법에 대한 아이디어가 있는 경우 다음과 같이 해결할 수 있는 인수
function countdown(n, newArr=[]) {
if (n <= 0) {
return newArr;
}
newArr.push(n);
return countdown(n - 1, newArr)
}
console.log(countdown(5));
이것이 재귀 함수에서 해당 요소와 함께 인수 배열을 전달하는 방법입니다.
이제 가장 짧은/imo 최상의 솔루션은 아래와 같이 배열 방법에서 unshift를 사용하는 것입니다. unshift는 push와 동일하지만 반대 순서이므로 잘 작동합니다.
function countdown(n) {
if (n < 1) {
return [];
} else {
const arr = countdown(n - 1);
arr.unshift(n);
return arr;
}
}
Reference
이 문제에 관하여(재귀를 사용하여 카운트다운 만들기(FreeCodecamp 참고 사항)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/naveenkolambage/create-a-countdown-using-recursion-freecodecamp-notes-1k2m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)