728x90
JS 에서 변수 선언시에 사용되는 단어 ex) var / let / const
<전역변수> : 중괄호{} 밖에서 만들어진 변수 |
<지역변수> : 중괄호{}안 영역에서 만들어진 변수 |
1. 함수 레벨 스코프 : 지역변수는 전역변수에 영향을 줄 수 없다.
2. 블록 레벨 스코프 : 블록{} 내에서 선언된 변수는 블록 내에서만 적용
(선언자 들은 2가지 중 한 개를 따른다.)
<변수 선언>
---> 변수선언으로 메모리 공간확보, 보호
선언자를 왜 여러개 만들었을까?
1. var
- 함수 레벨 스코프를 따른다. (선언전 사용해도 에러 X) / 의도치 않게 전역변수가 선언되어 부작용 발생
- 호이스팅될 때 초기 값이 없으면 undefined를 초기 값으로 할당
- 재선언, 재할당 가능
2. let
- 블록 레벨 스코프를 따른다.
- 호이스팅될 때 초기 값이 없으면 초기 값 할당X
- 재선언 불가, 재할당 가능
3. const
- 블럭 레벨 스코프를 따른다.
- 초기값이 필수 (선언과 초기화를 동시에 해야 한다.)
Ex)const a; -->SyntaxError const a=3 (O) |
- 재선언이 불가하며, 재할당도 불가
- Const는 상수
728x90
'FrontEnd > JavaScript' 카테고리의 다른 글
tabIndex (0) | 2022.08.15 |
---|---|
숫자 타입 (0) | 2022.07.22 |
Data type (0) | 2022.07.22 |
선언 , 할당 , 참조 (0) | 2022.07.21 |
JavaScript (0) | 2022.07.19 |