JavaScript 함수 유형
함수형 프로그래밍, 바닐라 자바스크립트 등 함수를 사용하다 보면 많은 유형으로 함수를 사용 할 수 있다는 것을 보게 되는데 정리를 해보자
MDN Web Docs 함수선언
MDN Web Docs 함수
Before ES6
함수 정의문

- 함수의 이름
- 소괄호안에 파라미터
- 대괄호안에 명령문
함수 정의식

- bar()를 호출하면 foo()이름으로 호출이 되는 것이 아니다
- bar로 정의된 함수는 익명함수가 된다

- 이 함수는 즉시 실행되고 잊혀진다
- 재호출이 불가능하다.
파라미터로 함수, 그리고 함수를 반환

- 이 함수는 함수를 인자로 받아 함수를 반환하게 된다
After ES6
익명 함수 변수선언



- 익명함수가 아니라 변수선언당시 이름이 있는 함수가 할당된 경우 호이스팅이 가능하다
화살표 함수

- 좀 더 직관적인 모습을 하고 있음
- () 안에 인자를 가지고 {} 라는 결과를 낸다는 늬앙스?
변수에 화살표 함수 선언


- 한줄 함수, 람다 함수라고 불리기도 함
- 인자가 하나일때 괄호 생략이 가능하다
- 한줄로 구성되는 경우 return 생략 가능