일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- vp #vc #did #신원인증 #블록체인
- 미쉬킨의화폐와금융 #미쉬킨 #화폐금융론 #화폐와금융 #경제학 #교양 #경제지식 #경제공부
- html #js #parsing
- 자료구조 #알고리즘
- #경제상식 #화폐 #금융 #화폐금융론 #경제학 #경제기본 #경제지식 #경제근육 #투자지식 #경제공부 #경제학전공 #금융이란 #화폐란 #금융시장 #금융시장역할 #화폐역할 #화폐역기능 #금융역기능 #
- 페이스북유니버시티 #마케팅교육 #마케팅캠프
- #국제채권시장 #유로본드 #유로커런시 #유로달러 #외국채 #금융중개기관 #간접금융 #거래비용#다우존스공업평균지수 #나스닥종합지수 #FTSE100 #DAX #CAC40 #straittimes #항생지수 #거래비용 #유동성 #위
- 블록체인 #layer2 #레이어2 #이더리움스케일링
Archives
- Today
- Total
평행우주 : world 1
[JS] 콜백함수와 고차함수 본문
콜백 함수란
자바스크립트의 함수는 일급 객체이므로, 함수의 매개변수를 통해 함수를 전달할 수 있다.
- 함수의 매개변수를 통해 다른 함수의 내부로 전달되는 함수를 콜백함수라고 하며,
- 매개 변수를 통해 함수의 외부에서 콜백 함수를 전달받은 함수를 고차함수라고 한다.
고차 함수란
- 고차 함수(higher order function)는 함수를 인자(argument)로 받을 수 있고, 함수의 형태로 리턴할 수 있는 함수.
- 고차함수는 콜백함수를 자신의 일부분으로 합성한다.
- 콜백 함수를 전달받은 고차 함수는, 함수 내부에서 이 콜백 함수를 호출(invoke) 할 수 있다.
- 고차함수는 매개변수를 통해 전달받은 콜백함수의 호출시점과 실행 여부를 조건에 따라 결정할 수 있다.
- 콜백함수는 고차 함수에 의해 호출되며, 이때 고차함수는 필요에 따라 콜백함수에 인수를 전달할 수 있다
- '함수를 리턴하는 함수'를 고안해 낸 논리학자 하스켈 커리(Haskell Curry)의 이름을 따, 커리 함수라고도 한다.
- 따로 커리 함수라는 용어를 사용하는 경우에는, 고차 함수란 용어를 '함수를 인자로 받는 함수'에만 한정해 사용하는 경우도 있다.
- 그러나 정확하게 구분하자면, 고차 함수가 커리 함수를 포함하는 관계.
+)
- 콜백 함수로서 전달된 함수 리터럴은 고차함수가 호출될 때마다 평가되어 함수 객체를 생성한다
- 따라서 콜백함수를 다른 곳에서도 호출할 필요가 있거나, 콜백 함수를 전달 받는 함수가 자주 호출된다면
- 함수 외부에서 콜백 함수를 정의한 후 함수 참조를 고차 함수에 전달하는 것이 효율적이다
'텃밭 2 : FE > JavaScript' 카테고리의 다른 글
[JS] 브라우저의 렌더링 과정 (0) | 2022.02.19 |
---|---|
[JS] 내장 고차함수 : filter, map, reduce (0) | 2022.02.16 |
[JS] 일급 객체와 함수 First-class citizen (0) | 2022.02.14 |
[JS] 메모리 구조적으로 살펴본 ==, === 의 차이 (0) | 2022.02.03 |
[JS] var, let, const 로 선언한 변수는 실제로 어디에 저장될까 (0) | 2022.01.29 |
Comments