호이스팅_JavaScript

miin·2021년 12월 30일
0

Java Script

목록 보기
16/35
post-thumbnail

정의

  • 함수가 실행되기 전에 안에있는 변수들을 범위의 최 상단으로 끌어올리는 것
    -> 자바스크립트 Parser가 함수 실행 전 해당 함수를 한 번 훑는다.
    -> 함수 안에 존재하는 변수/함수선언에 대한 정보를 기억하고 있다가 실행시킨다.
    -> 유효 범위: 함수 블록 {} 안에서 유효
  • 호이스팅시 변수의 선언과 초기화(undefined)로 같이 시켜버린다

대상

  • var 변수 선언과 함수 선언문에서만 호이스팅이 일이난다
    -> var 변수/함수의 선언만 위로 끌어 올려지며, 할당은 끌어 올려지지 않는다.
    -> let/const 변수 선언과 함수표현식에서는 호이스팅이 발생하지 않는다.
  • 호이스팅은 함수선언문과 함수표현식에서 서로 다르게 동작하기 때문에 주의해야 한다.
    -> 변수에 할당된 함수표현식은 끌어 올려지지 않기 때문에 이때는 변수의 스코프 규칙을 따른다

0개의 댓글