var와 let/const의 차이점은 무엇일까요?(function/block scope)

boyeonJ·2023년 6월 29일
0

JavaScript Basic

목록 보기
13/24
post-thumbnail

var와 let/const의 차이점

varlet은 JavaScript에서 변수를 선언하는 데 사용되는 키워드입니다. 이 두 키워드의 주요 차이점은 변수의 범위(scope)입니다.

var : function scope

var는 함수 범위(function scope)를 가지고 있습니다. 즉, var로 선언된 변수는 해당 함수 내에서만 유효하며, 함수 외부에서는 접근할 수 없습니다.

function example() {
  var x = 10;
  console.log(x); // 출력: 10
}

console.log(x); // 오류: x는 정의되지 않음

위의 예제에서 var x = 10;example() 함수 내에서 선언된 변수 x를 의미합니다. 따라서 console.log(x);example() 함수 내부에서 실행될 때만 변수 x에 접근할 수 있습니다.

let/const의 : block scope

let/const의은 블록 범위(block scope)를 가지고 있습니다. 즉, let/const의으로 선언된 변수는 해당 블록 내에서만 유효하며, 블록 외부에서는 접근할 수 없습니다. 블록은 중괄호 {}로 구분되는 영역을 의미합니다.

function example() {
  if (true) {
    let x = 10;
    console.log(x); // 출력: 10
  }

  console.log(x); // 오류: x는 정의되지 않음
}

위의 예제에서 let x = 10;if 문 내에서 선언된 변수 x를 의미합니다. 따라서 console.log(x);if 문 내부에서 실행될 때만 변수 x에 접근할 수 있습니다.

전역 변수 = 전역


그래서 어떤 키워드를 사용하면 좋을까?

let/const의을 사용하면 변수의 유효 범위를 더욱 정확하게 제어할 수 있습니다. ES6부터는 letconst를 사용하는 것을 권장하며, var는 구식의 변수 선언 방식으로 간주됩니다.


0개의 댓글