호이스팅

이건우·2022년 4월 4일
0

JavaScript

목록 보기
1/4

호이스팅

var키워드로 변수를 선언하면 변수 호이스팅에 의해 변수 선언문이 스코프의 선두로 끌어 올려진것 처럼 동작함. 즉, 변수 호이스팅에 의해 var 키워드로 선언한 변수는 변수 선언문 이전에 참조할 수 있다.

console.log(foo); // undefined

// 변수값 할당
foo = 123;

console.log(foo); // 123

// 변수선언은 암묵적으로 자바스크립트 엔진에 의해 실행됨
var foo;
  1. 호이스팅은 함수/변수 선언에만 작동됩니다.
  2. let과 const에선 작동하지 않으며 오로지 함수블록 스코프인 var에서만 작동합니다.
  3. 사용될 경우, 변수 선언문 이전에 변수를 참조하는것은 에러를 발생하지 않지만 프로그램 흐름상 맞지않으며 가독성이 떨어져 앞으로의 오류발생시킬 여지가 생기기 때문에 지양해야 합니다.
profile
내가 느낌만알고 한줄도 설명할줄 모른다면 '모르는 것'이다.

0개의 댓글