ES6 이전의 Javascript에서는 var가 변수 선언방법 중 유일한 방법이였습니다.

하지만 ES6에서는 let, const 가 나왔습니다.

 

이전에 변수란 무엇인가?

변수란 데이터를 담기 위한 메모리 공간입니다.

var helloworld; // 변수 선언. undifined
var hi = hello; //  hello를 hi에 할당
var a,b,c,d; // 변수 a,b,c,d를 선언
let test = test;
const test = test;

이런 식으로 값을 변수에 할당 할 수 있습니다.

 

var

var( 변수 재선언 가능)

변수 선언을 여러 번해도 에러없이 각기 다른 값이 출력  될 수 있습니다.

var test = '안녕1';
console.log(test); // 안녕1

var test = '안녕2;
console.log(test) // 안녕2

이런식으로 같은 test라는 변수를 계속 재선언 가능하면 코딩을 할 때 헷갈리거나 하는 일이 종종 생깁니다.

이를 보안하기 위해 ES6부터 let, const가 추가 되었습니다.

let

let 은 ( 변수 재선언 불가능,  변수 재할당 가능)

 

let test = '안녕';
console.log(test) // 안녕

test = '안녕 변경!';
console.log('test') // 안녕 변경!

let test = '안녕 변경의 변경!!!';
console.log('test') // 에러!!!!!!!!!!

let은 다시 재선언은 불가능하지만 재할당은 가능합니다.

 

const

const( 변수 재선언, 재할당 모두 불가능 )

const test = '안녕';
console.log(test); // 안녕

test = '안녕 바꿔치기';
console.log(test); // 에러--

const test = '안녕 바꿔치기!';
console.log(test); // 에러--

const 경우 재할당, 재선언 모두 불가능합니다.

 

그럼 무엇을 사용해야 하는가 ?

var는 ES5 변수 선언이라서 쓰이지 않습니다. 대부분 let, const를 많이 사용하는데

상황에 맞게 let, const를 써주면 될 것 같습니다.

예를 들면 재할당이 필요 없는 경우 => const  필요 한 경우 => let 이렇게 사용하는게 좋을 것 같습니다.

+ Recent posts