[JS] let과 const (1)

선영·2022년 8월 14일
0

JS

목록 보기
7/25
post-thumbnail
  • var 예약어를 사용하는 변수는 함수 영역의 스코프를 가지고, 재할당과 재선언을 할 수 있음. var 예약어를 빠뜨리면 의도하지 않게 전역변수가 되기도 하여 ES6에서는 예약어로 let과 const가 추가되었고, 되도록이면 var예약어는 사용하지 않을 것을 권장함.
  • 예약어 var와 let, const의 가장 큰 차이는 스코프의 범위. var함수 영역(레벨)의 스코프를 가지지만 letconst블록 영역의 스코프를 가짐.

let을 사용한 변수의 특징


블록 안에서만 쓸 수 있는 변수

  • 변수를 선언한 블록{ }에서만 유효하고, 블록을 벗어나면 사용할 수 없음.
    블록변수 : { }블록이나 ( )블록에서만 사용할 수 있는 변수

  • 만약 전역 변수를 선언하고 싶다면 let 예약어를 쓰지 않고 변수 이름과 초기값만 할당하면 됨.

재할당은 가능하지만 재선언은 할 수 없는 변수

  • 블록 변수의 재할당

  • 재선언할 수 없는 let 변수


호이스팅이 없는 변수

  • var 예약어를 사용한 변수는 선언하기 전에 실행하더라도 아직 할당되지 않은 자료형인 undefined값을 가질 수 있음. 하지만 let 예약어를 사용한 변수는 선언하기 전에 사용할 경우 오류메세지를 나타냄.


    → 함수 displayNumber()에서 변수y를 초기화히기 전에 사용할 수 없다는 뜻

0개의 댓글