JS에서 커링하기 🤠
4874 단어 todayilearnedjavascript
자바스크립트로 요리? 뭐? 🤷♂️
Currying은 함수가 여러 매개변수를 입력으로 사용하고 정확히 하나의 매개변수가 있는 함수를 반환하는 기술입니다.
커링은 불변 데이터와 순수(부작용 없음) 함수를 사용하여 프로그램 상태(부작용이라고 함)에 대한 변경 횟수를 최소화하려는 프로그래밍 패턴인 함수형 프로그래밍의 기본 도구입니다.
이제 본론으로 들어가겠습니다. 이 코드 예제를 확인하십시오.
const isDivisible = (divider, number) => !(number % divider);
const divider = 2;
console.log(isDivisible(divider, 40)); // true
console.log(isDivisible(divider, 33)); // false
이전 코드에서 isDivisible
는 하나의 숫자가 다른 숫자로 나누어지는지 여부를 확인하여 참 또는 거짓을 반환하는 함수 표현식입니다.
세 번의 호출isDivisible
에서 내 의도가 동일한 제수를 사용하는 것이라면, 숫자가 2로 나누어 떨어지는지 알고 싶을 때마다 제수를 매개변수로 전달해야 하는 것이 지루하고 지루하지 않습니까?
isDivisible
함수를 변경하고 제수를 고정 값으로 만들기만 하면 됩니다.
그러나 재사용 불가능하고 완전히 캐스트된 기능에 영향을 미치는 거대한 결합이 있을 것입니다.
이제 우리 게임 스타가 개입할 때입니다.
커링 🤓
const isDivisible = divider => number => !(number % divider);
console.log(isDivisible(2)(40)); // true
console.log(isDivisible(2)(33)); // false
console.log(isDivisible(3)(40)); // false
console.log(isDivisible(3)(33)); // true
따라서 이제 우리는 숫자 2에 의존할 뿐만 아니라 숫자가 나눌 수 있는지 여부를 알고 싶은 모든 상황에서 사용할 수 있는 분리되고 유연한 기능을 가지고 있습니다 🧐
🍻
Reference
이 문제에 관하여(JS에서 커링하기 🤠), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/wakeupmh/currying-in-js-3k7d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
const isDivisible = (divider, number) => !(number % divider);
const divider = 2;
console.log(isDivisible(divider, 40)); // true
console.log(isDivisible(divider, 33)); // false
const isDivisible = divider => number => !(number % divider);
console.log(isDivisible(2)(40)); // true
console.log(isDivisible(2)(33)); // false
console.log(isDivisible(3)(40)); // false
console.log(isDivisible(3)(33)); // true
Reference
이 문제에 관하여(JS에서 커링하기 🤠), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/wakeupmh/currying-in-js-3k7d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)