호이스팅 : 자바스크립트에서 모든 선언(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
Posted by codens