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 이렇게 사용하는게 좋을 것 같습니다.
'javascript' 카테고리의 다른 글
javascript timestamp 변환 (0) | 2021.02.24 |
---|---|
[자바스크립트 기초부터] javascript map 을 알아보자. (0) | 2020.11.12 |
[자바스크립트 기초부터] 이메일, 비밀번호 유효성 검사 확인 (0) | 2020.11.11 |
[자바스크립트 기초부터] Function 함수 (0) | 2020.11.05 |
[자바스크립트 기초부터] 배열, 오브젝트 를 알아보자 (0) | 2020.11.04 |