JavaScript에서는 함수가 하나 이상의 매개변수를 사용하고 나머지 매개변수를 사용하는 새 함수를 반환하는 경우 "커리"된 것으로 간주됩니다. Currying은 기존 함수 또는 깊이 n의 "curry"함수에서 새로운 함수를 만드는 데 사용할 수 있는 강력한 기술입니다.
특정 기능을 통화 취소하려는 데에는 여러 가지 이유가 있습니다. 예를 들어 다음을 원할 수 있습니다. -
커리되지 않은 함수가 필요한 상황에서는 커리된 함수를 사용하세요
커리된 함수를 커리되지 않은 형식으로 변환하여 더 쉽게 읽거나 디버그할 수 있습니다
커링 기능 성능 최적화
함수를 카레하는방법은 두 가지가 있습니다 -
첫 번째 방법은 "Function.prototype.apply" 메서드를 사용하는 것입니다.
두 번째 방법은 "Function.prototype.call" 메서드를 사용하는 것입니다.
"Function.prototype.apply"메서드는 깊이 n의 함수를 저장 하는데 사용할 수 있습니다. 이렇게 하려면 "this" 값과 매개변수 배열을 "apply" 메소드에 전달하기만 하면 됩니다. 예를 들어 -
으아악"Function.prototype.call" 메서드를 사용하여 함수를 깊이 n으로 취소할 수도 있습니다. "call" 메서드는 "apply" 메서드와 유사하지만 "this" 값과 인수를 배열이 아닌 개별 인수로 "call" i> 메서드에 전달합니다. 예를 들어 -
으아악위의 예에서는 "call" 메서드를 사용하여 "currriedAdd" 함수를 카레했습니다. 보시다시피 "call" 메서드는 "apply" 메서드보다 약간 더 장황하지만 동일한 효과를 갖습니다.
"Function.prototype.apply" 메소드를 사용하면 어떤 이점이 있나요?
함수를 역참조하기 위해 "Function.prototype.apply" 메서드를 사용하면 여러 가지 이점이 있습니다. -
"적용" 방법은 "호출" 방법보다 빠릅니다.
"적용" 방법은 "호출" 방법보다 더 광범위하게 지원됩니다.
"적용" 방법은 "호출" 방법보다 더 간결합니다.
요약하자면, 커링은 기존 함수에서 새로운 함수를 만들거나 깊이 n의 함수를 "커리"하는 데 사용할 수 있는 강력한 기술입니다.
위 내용은 JavaScript에서 함수를 깊이 n으로 재귀하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!