호이스팅 : 자바스크립트에서 모든 선언(Declaration)을 위로 올리는 룰
- 엔진구동시 코드의 위치 이동
- 하지만 값의 할당(Assignment)은 런타임에 이루어짐
- 함수 선언도 호이스팅 되어 전역객체처럼 쓰임
* var
console.log(val1); // undefined
var val1 = 'VAL1';
//
var val2;
console.log(val2); // undefined
val2 = 'VAL1'
//===========
* let
console.log(let1); // Uncaught ReferenceError: Cannot access 'let1' before initialization
let let1 = 'LET1';
let let2;
console.log(let2); // undefined
let2 = 'LET2'
반응형
'Code > JavaScript' 카테고리의 다른 글
[Javascript] async & await (0) | 2019.07.20 |
---|---|
[Javascript] 클로저 , Closure (0) | 2019.07.20 |
[Javascript] 웹 워커, Web Worker (0) | 2019.07.20 |
[Javascript] this (0) | 2019.07.19 |
[Javascript] ES2015 객체 리터럴 (0) | 2019.07.19 |