커링은 인자를 여러개 받는 함수를 분리하여, 인자를 하나씩만 받는 함수의 체인으로 만드는 방법이다.
함수형 프로그래밍 기법 중 하나로 함수를 재사용하는데 유용하게 쓰일 수 있는 기법이다.
자바스크립트 내부에는 커링이 내장되어 있지 않지만 자바스크립트로도 구현이 가능하다.
// curring
function add(a){
console.log(`${a}`);
return function(b){
console.log(`${a} + ${b}`);
return a+b;
}
}
// add(1)(2);
이때 add(1)이 선언되는 순간, 위의 함수가 return하는 익명함수는 closure가 된다.
커링을 사용하면서
장점: