○ 자바스크립트에서는 3개의 키워드 [ var, const, let ] 를 사용해 변수를 선언.
var 선언은 전역 범위 또는 함수 범위인 반면 let 및 const는 블록 범위이다.
(1) var
- ES5까지의 자바스크립트에는 변수 선언방법은 var 뿐이었다.
- var로 선언한 변수는 함수 스코프 or 전역 스코프입다.
→ 함수 스코프 : 함수 내부 영역
→ 전역 스코프 : 함수 내외부 영역
* scope : 범위
- 선언한 변수의 값을 update 할 수 있다.
* 단 변수가 선언된 스코프와 하위 스코프(중첩, 내부 함수)에서만 가능
- 변수를 다시 선언할 수 있다.
(2) let
º 'Let' 단어를 사용
- 블록범위로써 블록에 선언된 변수는 해당 블록 내에서만 사용할 수 있다.
*블록 : { } 중괄호를 말함
- 선언한 변수의 값을 update 할 수 있다.
* 단 변수가 선언된 스코프와 하위 스코프(중첩, 내부 함수)에서만 가능
- 변수를 다시 선언할 수 있다.
(3) const
º const ( constant : '일정한' 이란 의미를 가지고 있다 )
- 블록범위로써 블록에 선언된 변수는 해당 블록 내에서만 사용할 수 있다.
*블록 : { } 중괄호를 말함
- 선언한 변수의 값을 다시 선언하거나 update가 불가능 하다.
- const 개체는 업데이트 할 수 없지만, 개체의 속성은 업데이트 할 수 있다.
* const 개체 및 속성 선언
const person = {
name: "HongGilDong",
age: 20,
favoriteColor: "yello"
}
* const 속성 변경시
person.favoriteColor = "green";
결론
- var 사용은 자제하기
- 변하지 않을 변수 선언시 const 사용
- 중간에 update가 될 수 있는 값에 대한 변수 선언시 let 사용
참고자료
https://ko.javascript.info/var#ref-111
https://www.freecodecamp.org/news/var-let-and-const-whats-the-difference/
'개발공부 > 프론트엔드' 카테고리의 다른 글
[javascript] json-파싱데이터 정리해서 볼 수 있는 사이트 (0) | 2023.05.19 |
---|---|
[javascript] 숫자 입력시 천단위 콤마 (정규식 사용) (0) | 2022.04.12 |
수정할 데이터 input에 값 자동세팅방법 (0) | 2022.01.06 |
[jstl] enter, 줄바꿈 적용 (0) | 2021.09.29 |
[javascript] location 객체 알아보기 (0) | 2021.08.27 |