currying 초심자

YOUNGJOO-YOON·2021년 7월 11일
0

typeScript

목록 보기
31/65

TOC

  1. currying이란

currying의 기본 작동 방식을 생각해봅시다.

let currying=function(greeting:string){ // 1
	return function(name:string){ // 2
		console.log(greeting+', '+name); // 3
	}
}

currying('hello!')('yoon'); // 4
  1. 외부함수를 실행한다.

  2. 내부 함수를 실행하면서 외부함수의 인자인 greeting은 closure에 저장되어 보존된다. (hello!)

  3. 내부함수의 return을 통해 greeting과 name의 인자를 반환하고 종료된다.


let currying=function(greeting:string){
	return function(name:string){
		return function(region:string){
			return function(gender:string){
		console.log(greeting+', '+name+' in '+region+' gender: ', gender);
			}
		}
	}
}

이런식으로 늘려서 사용하는 것도 가능하다

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.

0개의 댓글