-
[JS] 일급 함수와 고차함수기초/자바스크립트 2022. 12. 14. 19:04
인프런 강의 정리
함수형 프로그래밍과 Javascript ES6+
일급함수
- 함수를 값으로 다룰 수 있다.
- 조합성과 추상화의 도구이다.
- 함수가 값으로 다뤄질 수 있다.
고차함수
- 함수를 값으로 다루는 함수
- 함수를 인자로 받아서 실행하는 함수
-일급함수 예제
const inc = x = x + 1; log( inc ); // x = x + 1 log( inc(10) ); // 11 const func1 = () = () => 1; const func2 = func1(); log( func1() ); // () => 1 log( func2 ); // () => 1 log( func2() ); // 1
고차함수 - 함수를 인자로 받아서 실행하는 함수
const apply = func => func(1); const inc = x = x + 1; const repeat = (func, n) => { let i = -1; while(++i < n) func(i); } repeat(log, 5); // 0 1 2 3 4 repeat(a => log(a + 10), 3); // 10 11 12 13 14
고차함수 - 함수를 만들어 리턴하는 함수 ( 클로저를 만들어 리턴하는 함수 )
- addMaker
const addMaker = a = b = a + b; const add10 = addMaker(10); log(addMaker); // b = a + b ( 클로저가 리턴됨 ) log(add10(5)); // 15 log(add10(10)); // 20
'기초 > 자바스크립트' 카테고리의 다른 글
[JS] Map, Filter, Reduce (0) 2022.12.17 [JS] 제너레이터 (0) 2022.12.17 GridSatck (Test.html) (0) 2022.03.16 [JS] 모자이크 처리 (2) 2022.03.04 [Javascript] OpenLayers + GeoServer + PostGIS + VWORLD + WFS,WMS (7) 2020.11.11