JavaScript ES6 문법 - 변수

박재휘·2024년 2월 18일

JavaScript

목록 보기
1/19
post-thumbnail

기존 자바스크립트의 변수 선언은 var라는 키워드로 했었다. 하지만 ES6에서 constlet이라는 새로운 변수 선언 키워드가 도입되었다. 각 키워드마다 변수의 선언, 할당, 범위의 차이가 있다.

var

재선언: O
재할당: O
범위: function

var 재선언O, 재할당O

var name = "kim";
var name = "park";
console.log(name);

위 코드를 실행시키면 콘솔창에 park가 출력된다. 재선언과 재할당이 모두 되는것을 확인할 수 있다.

let

재선언: X
재할당: O
범위: 블록범위

let 재선언X

let name = "kim";
let name = "park";

위 코드를 실행시키면 콘솔창에

`name`이 이미 선언되었다는 에러가 발생한다.

let 재할당O

let name = "kim";
name = "park";
console.log(name);

재선언은 불가하지만 재할당은 가능하다. 위 코드를 실행시키면 콘솔창에 park가 출력된다.

const

재선언: X
재할당: X
범위: 블록범위

const 재선언X

const name = "kim";
const name = "park";

let과 마찬가지로 const도 재선언이 불가하며 위 코드를 실행시키면 에러가 발생한다.

const 재할당X

const name = "kim";
name = "park";

위 코드를 실행시키면 다음과 같이

constant(상수) 변수에 할당되었다는 에러가 발생한다. 바뀌면 안되는 값을 저장하고 싶을때 사용하면 좋다.

  • 다만 const변수에 오브젝트를 담으면 오브젝트 내의 데이터는 변경 가능하다.
  • 변경 불가능한 오브젝트를 만들고 싶다면 Object.freeze()를 사용
profile
차곡차곡 열심히

0개의 댓글