[JavaScript] let vs. var vs. const

안정현·2021년 3월 21일
0

변수(variable) : 프로그램을 실행하는 동안 값이 여러 번 변경될 수 있는 데이터

JavaScript 에서 변수를 선언할 수 있는 유일한 키워드는 let

let은 JavaScript ES6 버전에 추가된 언어로, 그 이전에는 var 를 사용했음

var hoisting(호이스팅. '끌어올린다') : 선언과 할당을 분리하여, 어디에 선언했느냐 상관없이 선언 부분을 가장 위로 끌어올려 코드를 해석한다는 의미

대부분의 프로그래밍 언어에서는 변수를 선언한 뒤에 값을 할당함

하지만, JavaScript 에서의 var
변수를 선언하기 전에 값을 할당할 수 있고,
심지어 값을 할당하기도 전에 console 창에서 출력도 가능함

console.log(age);  <!-- age 값으로 undefined 출력됨 -->
age = 10;
console.log(age);   <!-- age 값으로 10 출력됨 -->
var age;

위와 똑같은 내용을 let 을 이용하여 작성할 경우, console 창에 오류가 발생하게 됨

상수(constant) : 값을 선언함과 동시에 할당하고 나면 절대 바뀌지 않는 데이터

이러한 data type을 사용할 경우, 아래와 같은 장점이 있음

(1) 해킹에 의한 data 변경 방지 가능 (보안 이슈)
(2) 멀티 thread 프로그래밍에서 어떤 함수나 변수, 혹은 객체가 여러 스레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제 없음 (안전성)
(3) 추후 코드 변경시 개발자의 실수 방지 가능 (오류 예방)

<출처> 유튜브 채널(드림코딩 by 엘리)

0개의 댓글