카레
카레 여러 인수가 있는 함수를 단일 인수로 함수의 시퀀스로 평가하는 기술입니다. 모든 인수가 충족될 때까지 세 번째 함수 등을 사용하는 새 함수를 반환합니다.
커링 기능 사용
a) 동일한 변수를 반복해서 전달하는 것을 방지하는 데 도움이 됩니다.
b) 이벤트 처리에 매우 유용합니다.
구문:
function Myfunction(a) { return (b) => { return (c) => { return a * b * c } } }
예시
다음 예에서는 커리가 없기 때문에 를 사용하면 기존 함수에 모든 파라미터를 한번에(volume(11,2,3)) 전달하여 부피를 계산합니다.
<html> <body> <script> function volume(length, width, height) { return length * width * height; } document.write((volume(11,2,3))); </script> </body> </html>
출력
66
예시
다음 예에서는 커리 가 사용되면 마지막 함수가 마지막 매개변수를 호출할 때까지 매개변수가 하나씩(volume(11)(2)(3)) 전달되었습니다.
<html> <body> <script> function volume(length) { return function(width) { return function(height) { return height * width * length; } } } document.write(volume(11)(2)(3)) </script> </body> </html>
출력
66