자바스크립트에서 Currying을 사용하여 함수의 파라미터를 어떻게 반올림할 수 있나요?

다음은 자바스크립트에서 Currying을 사용하여 함수의 파라미터를 반올림하는 예시 코드입니다.

// Currying 함수 정의
function curryRound(decimals) {
  return function(number) {
    return Number(number.toFixed(decimals));
  }
}

// 반올림 함수 생성
const roundToTwoDecimals = curryRound(2);
const roundToThreeDecimals = curryRound(3);

// 사용 예시
console.log(roundToTwoDecimals(3.14159)); // Output: 3.14
console.log(roundToThreeDecimals(3.14159)); // Output: 3.142

위의 코드에서 curryRound 함수는 반올림할 자릿수를 인자로 받고, 클로저를 반환합니다. 반환된 함수는 실제로 반올림을 수행하는 역할을 합니다. toFixed 메소드를 사용하여 소수점 자릿수를 지정하고, Number 함수를 사용하여 문자열 형태의 숫자를 숫자로 변환합니다.

이후, curryRound 함수를 사용하여 원하는 자릿수로 반올림 함수를 생성할 수 있습니다. roundToTwoDecimals는 소수점 이하 두 자리까지 반올림하고, roundToThreeDecimals는 소수점 이하 세 자리까지 반올림합니다. 사용자는 이러한 함수를 호출하여 원하는 숫자를 반올림할 수 있습니다.

Currying을 사용하면 코드의 재사용성과 가독성을 높일 수 있으며, 파라미터를 동적으로 조작하는 데에도 유용합니다.