>  기사  >  웹 프론트엔드  >  JavaScript에서 함수를 깊이 n으로 재귀하는 방법은 무엇입니까?

JavaScript에서 함수를 깊이 n으로 재귀하는 방법은 무엇입니까?

WBOY
WBOY앞으로
2023-09-05 15:01:021253검색

如何在 JavaScript 中将函数递归到深度 n ?

JavaScript에서는 함수가 하나 이상의 매개변수를 사용하고 나머지 매개변수를 사용하는 새 함수를 반환하는 경우 "커리"된 것으로 간주됩니다. Currying은 기존 함수 또는 깊이 n의 "curry"함수에서 새로운 함수를 만드는 데 사용할 수 있는 강력한 기술입니다.

함수를 역참조해야 하는 이유는 무엇인가요?

특정 기능을 통화 취소하려는 데에는 여러 가지 이유가 있습니다. 예를 들어 다음을 원할 수 있습니다. -

  • 커리되지 않은 함수가 필요한 상황에서는 커리된 함수를 사용하세요

  • 커리된 함수를 커리되지 않은 형식으로 변환하여 더 쉽게 읽거나 디버그할 수 있습니다

  • 커링 기능 성능 최적화

함수를 역참조하는 방법은 무엇인가요?

함수를 카레하는방법은 두 가지가 있습니다 -

  • 첫 번째 방법은 "Function.prototype.apply" 메서드를 사용하는 것입니다.

  • 두 번째 방법은 "Function.prototype.call" 메서드를 사용하는 것입니다.

"Function.prototype.apply" 메소드를 사용하세요

"Function.prototype.apply"메서드는 깊이 n의 함수를 저장 하는데 사용할 수 있습니다. 이렇게 하려면 "this" 값과 매개변수 배열을 "apply" 메소드에 전달하기만 하면 됩니다. 예를 들어 -

으아악

"Function.prototype.call" 메소드를 사용하세요

"Function.prototype.call" 메서드를 사용하여 함수를 깊이 n으로 취소할 수도 있습니다. "call" 메서드는 "apply" 메서드와 유사하지만 "this" 값과 인수를 배열이 아닌 개별 인수로 "call" i> 메서드에 전달합니다. 예를 들어 -

으아악

위의 예에서는 "call" 메서드를 사용하여 "currriedAdd" 함수를 카레했습니다. 보시다시피 "call" 메서드는 "apply" 메서드보다 약간 더 장황하지만 동일한 효과를 갖습니다.

"Function.prototype.apply" 메소드를 사용하면 어떤 이점이 있나요?

함수를 역참조하기 위해 "Function.prototype.apply" 메서드를 사용하면 여러 가지 이점이 있습니다. -

  • "적용" 방법은 "호출" 방법보다 빠릅니다.

  • "적용" 방법은 "호출" 방법보다 더 광범위하게 지원됩니다.

  • "적용" 방법은 "호출" 방법보다 더 간결합니다.

요약하자면, 커링은 기존 함수에서 새로운 함수를 만들거나 깊이 n의 함수를 "커리"하는 데 사용할 수 있는 강력한 기술입니다.

위 내용은 JavaScript에서 함수를 깊이 n으로 재귀하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제