▶ 함수 (Function)
참조 자료형에 속하며, 모든 함수는 Function object이다
| 원시자료형 | 참조자료형 |
| 변수에 값이 직접 저장되는 자료형 (불변, 값이 복사됨) |
객체의 주소가 저장되는 자료형 (가변, 주소가 복사됨) |
| Number, String, Boolean null, undefined |
Object (Object, Array, ★Function★) |
▶ 함수 구조
![]() |
| function 키워드 함수의 이름 함수의 매개변수 함수의 body를 구성하는 statements return 값이 없다면, undefined를 반환한다 |
▶ 함수 정의 2가지 방법
| 선언식 (function declaration) | ★★ 표현식 (function expression) ★★ |
![]() |
![]() |
![]() |
![]() |
| 되도록 표현식으로 적으면 좋다 | |
![]() |
![]() |
| 익명 함수 X (사용 불가능) 호이스팅 O |
익명함수 O (사용 가능) 호이스팅 X |
| 함수 이름이 없는 '익명 함수'를 사용가능 선언식과 달리 표현식으로 정의한 함수는 호이스팅이 되지 않으므로 함수를 정의하기 전에 먼저 사용할 수 없다. |
'WEB > JavaScript' 카테고리의 다른 글
| [JavaScript] Spread syntax (0) | 2024.04.18 |
|---|---|
| [JavaScript] 매개변수 (0) | 2024.04.18 |
| [JavaScript][syntax] NaN을 반환하는 경우 (0) | 2024.04.17 |
| [JavaScript][syntax] 호이스팅 (hoisting) (0) | 2024.04.17 |
| [JavaScript][syntax] 함수 스코프 (function scope) (0) | 2024.04.17 |






