예전에 사용하던 말이 많았던 var... 요즘에는 const와 let으로 대체되었다.
하지만, 완전 대체되진 않았다. 스코프(유효 범위) 때문이다.
const와 let은 블록 스코프를 지니고 있다.
var는 함수 스코프를 지니고 있으므로 일반적인 if문의 블록이나 for문의 블록과 상관없이 동작한다.
const는 쉽게말해서 한 번만 할당한다( = )고 생각하면 된다. 한 번 값을 할당하면 그 이후로 값을 재할당할 수 없다.
또한, 초기화할 때 값을 할당해야 에러가 나지 않는다.
즉,
const a;
a = 20;
이렇게 작성하는 것은 불가능하다. 무조건 첫 선언과 동시에 할당해야한다.
let은 값이 언제든지 변할 수 있는 변수를 선언할때 사용한다. const에 비해 var와 유사하다.
const b;
b = 20;
둘 중 언제 어떤 것을 쓰면 될까?
변수는 초기화했던 값이 다른 값을 다시 할당하는 경우는 적을뿐만 아니라 실수로 변수의 값을 변경할 가능성도 존재한다.
따라서, 기본적으로 const를 사용하고 다른 값을 할당해야한다는 확신이 있을 때 let를 사용하면 된다.
'개발 > 자바스크립트' 카테고리의 다른 글
배열안에 객체가 여러개 있는 경우, 어떻게 가져올 수 있을까? (0) | 2021.07.14 |
---|---|
[Node.js] 노드에서 경로를 설정하는 방법 : __dirname & __filename (0) | 2021.05.03 |
[자바스크립트] if 조건을 사용할 때, false가 나오는 경우는 언제일까요? (0) | 2021.03.26 |
[자바스크립트] 문자로 된 숫자를 찐 숫자로 바꾸는 방법은 무엇일까? (0) | 2020.07.28 |
[자바스크립트] Object.freeze()를 통해 변경할 수 없는 객체를 만들어요 (0) | 2020.07.27 |