자바스크립트에서 Currying을 사용하여 함수를 어떻게 조합할 수 있나요?

먼저, Currying을 사용하여 두 개의 정수를 더하는 함수를 만들어 보겠습니다.

function add(a) {
  return function(b) {
    return a + b;
  };
}

위 코드에서 add 함수는 첫 번째 인수 a를 받은 후 내부 함수를 반환합니다. 내부 함수는 두 번째 인수 b를 받아 a + b의 결과를 반환합니다.

이제 이 함수를 사용하여 두 개의 숫자를 더하는 예제를 살펴보겠습니다.

const addFive = add(5);
console.log(addFive(3)); // 결과: 8

위 예제에서 add 함수에 첫 번째 인수로 5를 전달하여 addFive 함수를 생성했습니다. 그런 다음 addFive 함수에 두 번째 인수로 3을 전달하여 5 + 3의 결과를 얻었습니다.

Currying은 함수를 나누고 조합하므로 코드를 모듈화하고 재사용 가능하게 만듭니다. 또한 부분 적용(partial application)과 같은 기술과 결합하여 더 강력한 함수 조합을 구현할 수도 있습니다.

Currying은 자바스크립트에서 유용한 기술 중 하나이며 함수형 프로그래밍에도 자주 활용됩니다. 이를 사용하여 코드를 더 간결하고 유지 보수하기 쉽게 작성할 수 있습니다.

#currying #자바스크립트