ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JavaScript] 커링이란?
    JavaScript 2023. 9. 20. 00:12

    커링이란?

    커링이라는 단어를 처음보고 찾아보게 되었다. 만약에 function(a,b)와 같이 두 개의 매개 변수를 받는다고 가정하자. 이 함수는 매개 변수를 한 번에 받아 한 번만 호출하도록 구현됐음을 알 수 있다. 하지만 커링은 function(a)(b)처럼 인수를 하나씩 받는 방법을 의미한다.

     

    function hello(name){
    	return function(age){
    		return function(job){
    			return `이름: ${name}, 나이: ${age}, 직업: ${job}`
    		}
    	}
    }
    
    hello('아이유')(30)('가수')
    // 이름: 아이유, 나이: 30, 직업: 가수

    다음과 같이 사용할 수 있다. 커링된 함수는 첫 번째 인수를 받아서 그에 따른 함수를 반환하고, 그 반환된 함수에 다음 인수를 전달하여 값을 계산하는 방식으로 동작한다.

     

    왜 커링을 사용할까?

    커링을 어떤 상황에서 사용하는지 궁금하였다. 대표적으로 커링을 사용하면 함수에 필요한 일부 인수를 미리 고정할 수 있는 장점이 있다.  이를 통해 특정한 상황에서 함수를 더 쉽게 사용할 수 있다.

    const helloIU = hello('아이유')
    
    helloIU(30)('가수') // 이름: 아이유, 나이: 30, 직업: 가수
    helloIU(31)('배우') // 이름: 아이유, 나이: 31, 직업: 배우

    이처럼 name  인수를 고정한 함수를 반환하여 함수를 재사용할 수 있다는 장점이 있다.

     

     

     

    반응형

    댓글

Designed by Tistory.