변수 선언문 [var, let, const]
다시한번 정리해보기
global scope와 local scope
// 예제 1. 변수 선언 없이 a를 재할당만 했기 때문에 Global 환경을 참조합니다.
/* Global Scope */
let a = 1;
function foo() {
/* Local Scope */
a = 0;
console.log(a); // 0
}
foo(); // 0
console.log(a); // 1
// 예제 2. 함수 내에 let을 통해 다시 선언을 했기 때문에 Local 환경을 참조합니다.
let a = 1;
function zoo() {
let a = 2;
console.log(a); // 2
}
zoo(); // 2
console.log(a); // 1
let과 const는 거의 비슷하며 차이는 재할당에 있습니다.
const는 선언과 동시에 할당을 해야하며 재선언, 재할당이 불가능합니다.
let은 선언과 동시에 할당이 필요 없으며 재할당이 가능합니다.
추가적으로 var와 let & const간의 차이가 있는데 이 부분도 아래의 링크를 통해 조사해보시면 좋을 것 같습니다.
- var -> 함수 레벨 스코프
- let & const -> 블록({}) 레벨 스코프
그렇다면, 어떤 변수 선언 방식을 써야할까?
1) 변수 선언에는 기본적으로 const를 사용하고,
2) 재할당이 필요한 경우에 한정해 let 을 사용하는 것이 좋다.
그리고 객체를 재할당하는 경우는 생각보다 흔하지 않다.
const 를 사용하면 의도치 않은 재할당을 방지해 주기 때문에 보다 안전하다.
재할당이 필요한 경우에 한정해 let 을 사용한다. 이때, 변수의 스코프는 최대한 좁게 만든다.
재할당이 필요 없는 상수와 객체에는 const 를 사용한다.
Author And Source
이 문제에 관하여(변수 선언문 [var, let, const]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@serenity/var-let-const저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)