728x90
🐣 함수 선언문
function test() {}
어디서는 호출 가능하다(변수도 마찬가지). 이는 인터프리터 언어의 특징이며 호이스팅(hoisting)때문이다.
cf. 호이스팅(hoisting) : 자바스크립트는 실행전 초기화단계에서 모든 선언문을 찾아서 생성해두기 때문이다.
🐣 함수 표현식
let test = function() {}
자바스크립트가 해당 블록에 도착해야 생성된다. 호이스팅에 영향을 받지 않아 함수 선언문보다 더 자유롭게 작성 가능하다.
유용하게 사용되는 경우
- 클로져로 사용
- 콜백으로 사용(다른 함수의 인자로 전달 가능)
반응형
'Frontend > Javascript' 카테고리의 다른 글
Javascript) draggable한 element를 드래그 시 화면 일부가 하얗게 변하는 현상 해결방법(Chrome 버전 106) (0) | 2022.10.13 |
---|---|
Javascript) 객체(Object), 배열(Array) (0) | 2022.08.28 |
Javascript) 함수(function), 전역 변수와 지역 변수 (0) | 2022.08.28 |
Javascript) 자료형과 형변환 (0) | 2022.08.28 |
Javascript) 변수, 호이스팅, TDZ(Temporal Dead Zone), 생성자 함수 (0) | 2022.08.28 |