게으른 나에게

[JavaScript] - 함수 표현식 vs 함수 선언문 본문

My Study/JavaScript

[JavaScript] - 함수 표현식 vs 함수 선언문

handbefore 2025. 1. 12. 22:19

함수 표현식과 선언문의 차이

 

1. 문법

함수 선언문: 함수는 주요 코드 흐름 중간에 독자적인 구문 형태로 존재

// 함수 선언문
function sum(a, b) {
  return a + b;
}

함수 표현식: 함수는 표현식이나 구문 구성(syntax construct) 내부에 생성

// 함수 표현식
let sum = function(a, b) {
  return a + b;
};

 

2. 자바스크립트 엔진이 언제 함수를 생성하는지

함수 표현식: 실제 실행 흐름이 해당 함수에 도달했을 때 함수를 생성 -> 실행 흐름이 함수에 도달했을 때부터 해당 함수를 사용 가능

함수 선언문: 함수 선언문이 정의되기 전에도 호출 가능 -> 스크립트 어디에 있느냐에 상관없이 어디에서든 사용 가능

 

3. 스코프

함수 선언문: 코드 블록 내에 위치하면 해당 함수는 블록 내 어디서든 접근 가능. but 블록 밖에서는 함수에 접근 x.

 

 

 

'My Study > JavaScript' 카테고리의 다른 글

[JavaScript] - 형변환  (1) 2025.01.10
[JavaScript] - 상수  (1) 2024.11.08
[JavaScript] - Dom(ready, DOMContentLoaded)  (0) 2024.10.11
[JavaScript] - Array 정렬(sort, filter, map)  (0) 2024.10.11
[JavaScript] - Array, Object  (0) 2024.10.09