프로그래밍에서 변수는 어떠한 값을 위한 컨테이너라고 생각하면 된다. 변수는 컴퓨터 메모리에 존재하는 정보를 담은 작은 컨테이너이다. 다시 말해, 변수는 메모리에 데이터를 적고 저장(label and stored data)하는 것이다.
변수명 작성 규칙
- 변수명은 문자, 밑줄(_), 달러 기호($) 등으로 시작할 수 있으며 한글은 사용할 수 없다.
- 변수명 작성 시, 숫자가 맨 앞에 올 수 없다.
- 자바스크립트의 예약어는 변수명으로 사용 불가하다(ex. for, while, var, class 등, 전체 보기: MDN’s keyword documentation)
- 변수명에는 띄어쓰기를 못 쓰기 때문에 주로 캐멀케이스로 작성된다. (ex. userName, accountNumber)
- 변수명은 대소문자를 구분한다. myName과 myname은 다른 변수이다.
변수 선언과 초기화는 var, let, const로 할 수 있다.
var
2015년에 ES6에서 소개 된 가장 큰 변화는 변수 선언을 let과 const로도 할 수 있다는 점이다. 그 전까지는 오직 var로만 변수 선언을 할 수 있었다.
var myName = 'MJ';
console.log(myName); // output: MJ
1. var: 변수 생성(create) 및 선언(declare)
2. myName: 변수명
3. =: 할당 연산자(assignment operator), 'MJ'를 변수(myName)에 할당
4. 'MJ': myName이 'MJ'로 초기화 됨(initialized)
5. 값이 선언되고, 문자열 'MJ'을 변수명을 이용하여 콘솔에 출력
var에 대해 더 알아보기: MDN var documentation
let
let은 변수가 다른 값으로 재할당 될 수 있다.
let meal = 'Pizza';
console.log(meal); // output: Pizza
meal = 'Hamburger';
console.log(meal); // output: Hamburger
let이나 var로 변수의 값이 없는 상태로 할당할 경우, 자동적으로 초기화되어 undefined가 할당된다.
let day;
console.log(day); // output: undefined
day = 25;
console.log(day); // output: 25
const
const는 constant(변함없는, =fixed)의 이미로 값을 재할당할 수 없다. 따라서 보통 절대 바뀌면 안되는 변수를 const로 할당한다. 만약 변수를 재할당 할 경우, TypeError가 뜰 것이다.
const myName = 'MJ';
console.log(myName); // output: MJ
그리고 const로 변수를 할당할 때, 반드시 변수 값을 작성해야 한다. 만약 const로 변수 값 없이 변수를 생성하려하면 SyntaxError가 날 것이다.
ES6에서 let과 const가 나오면서, var를 거의 쓰지 않는 추세이다. 보통 const로 변수를 할당하고, 바뀔 일이 있다면 let으로 바꾼다.
'■ 프로그래밍 > JavaScript' 카테고리의 다른 글
데이터 타입 (2) - 참조타입(Function, Array, Object) (0) | 2020.01.26 |
---|---|
연산자(Operators) (2) - 문자열 관련 (0) | 2020.01.26 |
연산자(Operators) (1) - 숫자 관련 (0) | 2020.01.26 |
데이터 타입 (1) - 원시타입(Number, String, Boolean, Null, Undefined) (0) | 2020.01.25 |
자바스크립트(JavaScript) 소개 (0) | 2020.01.25 |