호이스팅(Hoisting)과 클로저(Closure)
2020. 11. 25. 18:02ㆍ개발 관련 학습정리/Web Front-end
반응형
호이스팅
변수를 선언하고 초기화 했을때 선언 부분이 최상단으로 끌어올려지는 현상으로
변수 및 함수 선언부가 스코프 내 제일 윗쪽으로 올라가게 된다.
함수 표현식/함수 선언식은 호이스팅이 적용되지만 let/const와 같은 변수는 호이스팅이 발생하지 않는다.
우선순위는 변수가 함수 선언보다 위로 끌어올려지며
코드의 가독성을 위하여 호이스팅을 최소화 하는 것이 좋다.
함수와 변수를 가급적 코드 상단부에 선언함으로 해결할 수 있다.
클로저
내부함수가 자신이 선언된 자리의 스코프를 기억하여 자신이 선언되었을때 그 스코프 환경에 접근할 수 있는 함수
내부함수로서 자신이 생성될때의 환경을 기억하는 함수이다.
쓰는 이유는 대표적으로 세가지이다.
1. 현재 상태를 기억하고 최신 상태로 유지하기 위하여
2. 전역 변수 사용을 지양하기 위해
3. 정보 은닉
반응형
'개발 관련 학습정리 > Web Front-end' 카테고리의 다른 글
REST API (0) | 2020.11.27 |
---|---|
자바스크립트에서의 this는 무엇일까? (0) | 2020.11.25 |
비동기 프로그래밍(AJAX, Callback, Promise, Async/Await) (0) | 2020.11.23 |
브라우저 렌더링 과정 / Http와 Https 통신 방식의 차이 (0) | 2020.11.23 |
객체 지향 프로그래밍과 함수형 프로그래밍 (0) | 2020.11.23 |