언어/JavaScript

var, let, const 변수 선언의 차이

홍시_코딩기록 2023. 5. 24. 19:20

요즘은 var를 권장하지 않는다.

var를 사용하면서 발생하는 문제점

1. 상수인지 변수인지 구분이 안된다.

2. 변수는 let으로 사용한다.

var a = "1";
var a = "10";

var는 위에서 1이라고 정의했어도 아래에서 10이라고 재정의가 가능해 스크립트 오류가 발생할 확률이 높다.

 

3. scope의 차이

var x = 1;
  if (true) {
    var x = 2;
    console.log(x); // 출력값: 2
  }
  console.log(x); // 출력값: 2
let x = 1;
  if (true) {
    let x = 2;
    console.log(x); // 출력값: 2
  }
  console.log(x); // 출력값: 1

var는 블록문 안에서 선언되었어도 밖에서 참조할 수 있고 let이나 const는 블록문 밖을 빠져나오면 효력을 잃게된다.

var는 함수스코프로 funcion 함수 단위를 벗어날 경우 사라진다.

'언어 > JavaScript' 카테고리의 다른 글

[javascipt30]자바스크립트 30일 챌린지  (0) 2023.05.27
따옴표와 백틱의 차이'',"",``  (0) 2023.05.24
Event  (0) 2022.05.25
DOM(문서객체모델)  (0) 2022.05.25
DOM(문서객체모델)  (0) 2022.05.20