Notice
Recent Posts
Recent Comments
Link
YTCW
2. javascript (호이스팅) 본문
직역하면 끌어올리다는 뜻이다.
자바스크립트 엔진 ( 변역기, interpreter ) 코드를 실행하기 전에 변수, 함수, 클래스의 선언문을 끌어 올리는 것을 말한다.
그러니까 제일 아래에서 선언해도 위로 끌어올려서 위에서 선언해준것처럼 해준다.
변수의 선언과 초기화를 분리한 후 선언만 코드의 최상단으로 옮긴다.
예를 들어 let a = 1; 이라면 할당한 값 1은 신경쓰지 않고 let a; 만 맨 위로 선언해준다.
하지만 최상단으로 끌어올린다고해서 let 선언부보다 같은 변수명을 선언하면 에러가 발생한다.
let letVariable;
var varVariable;
letVariable = 10;
varVariable = "Hello World";
// 호이스팅 효과로 선언 전에 값 할당이 가능
// letVariable2 = 10;
varVariable2 = "안녕";
let letVariable2 = 20;
var varVariable2 = "안녕 변수";
//! let VS var
// 공통점 : 재할당 가능 ( 변수의 특성 ), 호이스팅 가능
// 차이점
// let : 동일한 영역 내에서 같은 이름으로 재선언 불가
// var : 동일한 영역 내에서 같은 이름으로 재선언 가능 (사용x)
'javascript' 카테고리의 다른 글
3. javascript ( boolean, 비교 연산자, 삼항 연산자, 논리 연산자 ) (0) | 2024.07.31 |
---|---|
1. javascript (동작 이론, garbage collector,event loop, scope, Execution Countext) (0) | 2024.07.30 |