반복하다, 반복하다, 반복하다
2702 단어 functionaljavascript
초기 요소
x
와 함수f
를 고려해 보겠습니다. 필요한 것은 다음과 같은 배열입니다.[x, f(x), f(f(x)), ...]
음, 그러한 함수의 가장 간단한 적용은 , 2의 제곱: 1 ,2, 4, 8 ..과 같은 일련의 숫자를 만드는 것입니다.
이제 이러한 함수를 작성하는 방법을 살펴보겠습니다.
function iterate(fn, ele, n) {
if (n === 0) return [];
return [ele, ...iterate(fn, fn(ele), n - 1)];
}
우리의 함수
iterate
는 fn
에서 ele
까지의 반복 적용 목록을 반환하고 n
번 반복합니다.몇 가지 예를 시도해 보겠습니다.
함수 반복(fn, ele, iterationCount) {
if (반복 횟수 === 0) 반환 [];
return [ele, ...iterate(fn, fn(ele), iterationCount - 1)];
}
상수 곱하기 = (x) => (y) => x * y;
console.log(반복(곱하기(2), 1, 5));
초기 항목과 적용하는 기능은 생각할 수 있는 모든 것이 될 수 있습니다. 더미 제품 목록을 쉽게 만들 수 있습니다. 예를 살펴보세요.
함수 반복(fn, ele, iterationCount) {
if (반복 횟수 === 0) 반환 [];
return [ele, ...iterate(fn, fn(ele), iterationCount - 1)];
}
const initialProduct = { id: 100, 슬러그: `prd${100}`, 이름: `Product-${100}` };
const createNextProduct = (제품) => {
const nextProductId = product.id + 1;
반품 {
아이디: nextProductId,
슬러그: `prd${nextProductId}`,
이름: `제품-${nextProductId}`,
};
};
console.log(반복(createNextProduct, initialProduct, 5));
Reference
이 문제에 관하여(반복하다, 반복하다, 반복하다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kuncheriakuruvilla/iterate-iterate-iterate-2340텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)