[javascript] var 키워드와 let, const의 차이점

JavaScript에서 변수를 선언하는데 여러 가지 방법이 있습니다. var, let 및 const는 선언 방법 중 가장 널리 사용되는 것입니다. 이들 각각의 차이점을 살펴보겠습니다.

var

첫 번째로 var 키워드에 대해 알아보겠습니다. var로 선언된 변수는 함수 스코프를 갖습니다. 이는 함수 내에서 선언된 변수는 그 함수 내에서만 유효하며, 함수 외부에서는 접근할 수 없음을 의미합니다.

function exampleFunc() {
  var x = 10;
  if (true) {
    var x = 20;
    console.log(x); // 20
  }
  console.log(x); // 20
}

위의 예제에서 var를 사용하여 x를 두 번 선언했지만, 동일한 변수로 처리되어 값이 변경되었습니다.

let

ES6(ES2015)부터 도입된 let은 블록 스코프를 갖습니다. 블록 스코프는 중괄호({}) 내에서만 유효한 변수를 의미합니다.

function exampleFunc() {
  let x = 10;
  if (true) {
    let x = 20;
    console.log(x); // 20
  }
  console.log(x); // 10
}

위의 예제에서 let을 사용하여 x를 두 번 선언했지만, 각각 별개의 변수로 처리되어 값이 유지되었습니다.

const

const는 블록 스코프를 갖는 또 다른 변수 선언 방법입니다. const로 선언된 변수는 재할당이 불가능하며, 이는 한 번 값이 할당되면 다른 값으로 업데이트할 수 없음을 의미합니다.

function exampleFunc() {
  const x = 10;
  // x = 20; // Error: Assignment to constant variable.
  if (true) {
    const x = 20;
    console.log(x); // 20
  }
  console.log(x); // 10
}

위의 예제에서 const를 사용하여 x를 선언하고 나중에 재할당하려고 시도하면 오류가 발생합니다.

이러한 차이들을 고려하여 프로젝트의 요구에 맞는 변수 선언 방법을 선택해야 합니다.

이상으로 JavaScript 키워드 var와 let, const의 차이점에 대해 알아보았습니다.


본 문서는 다음 출처를 참고하여 작성되었습니다: