😅 TMI 주의
⚠️ var는 역사의 뒤안길로
let
과const
를 사용할 것var
에 대해서는 이후에...
I. 데이터를 담는 곳
console.log('Hello,', '철수');
// 값들을 주머니에 담아 사용하기
const SALUTATION = 'Hello,';
let person = '철수';
console.log(SALUTATION, person);
person = '영희';
console.log(SALUTATION, person);
- 값의 의미 나타냄
- 값의 재활용
- 변경되는 상태를 가리키는 식별자
II. 변수 variable
- 담긴 값이 바뀔 수 있는 주머니
let
사용
1. x란 변수를 선언(주머니 만듦)만 한 뒤 값을 넣음
💡 브라우저 콘솔에서 줄바꿈: shift
+ enter
let x;
console.log(x);
x = 1;
console.log(x);
- 💡
undefined
: '아직 값이 정해지지 않았다' 라는 값
2. 변수 선언과 값 넣기를 동시에 가능 (초기화 - 일반적인 사용법)
let x = 1;
console.log(x);
메모리상으로는 선언과 초기화를 따로 하는 것과 동일
undefined
할당 후 재할당
3. 다른 변수가 같은 값을 가질 때
let x = 1;
let y = x; // x가 가진 값을 y에 할당
console.log(x, y);
⭐ 같은 값이 다른 데이터 영역에 저장되지 않음 메모리절약
4. x
에 1을 넣은 뒤 값을 'Hello!'로 변경
let x = 1;
let y = x;
console.log('변경 전', x, y);
x = 'Hello!';
console.log('변경 후', x, y);
⭐️ C 등의 언어와 달리, 메모리상 가리키는 위치가 변경
- 기존 위치에 새 값을 넣는 것이 아님
- 차지하는 자리가 다른 크기의(자료형이 다른) 데이터가 재할당될 수 있으므로
5. 이미 만들어진 주머니를 다시 만들(재선언) 수 없음
let x = 1;
console.log('첫 선언', x);
let x = 2;
console.log('다시 선언', x);
var
는 이것이 가능했었음- 브라우저의 콘솔에서는 독립적으로 실행하면 가능 - 특수케이스
6. 선언하기 전 코드를 사용할 수는 없음
console.log(xyz);
let xyz = 1;
III. 상수 constant
- 담긴 값이 바뀔 수 없는 주머니
const
사용- 흔히 대문자로 명명 - 여러 곳에서 사용될 공통 값인 경우
1. 상수를 선언과 동시에 초기화
const PI = 3.14;
console.log('원주율:', PI);
2. 선언하기만 하는 것 불가
const PI;
PI = 3.14;
3. 상수는 값의 변경 불가
const PI = 3.14;
PI = 3.14159
- ⭐ 값이 바뀔 일이 없는 데이터는 상수로 선언할 것
💡 여러 변수와 상수 동시에 선언
// let a = 1;
// let b = 2;
// ...
let a = 1, b = 2, c = 3;
const X = 4, Y = 5, Z = 6;
console.log(a, b, c);
console.log(X, Y, Z);
😅 브라우저 콘솔로 실습시 특이사항
let x = 1;
let x = 2;
let x = 1;
let x = 2;
const x = 3;
- 독립된 시행시 같은 이름의 변수나 상수를 재선언 가능
- 단 변수를 상수로, 상수를 변수로 재선언하면 오류 - 새로고침 필요
- 강의 진행 편의상
const
가 적합함에도let
을 사용하는 부분들 있을 것
IV. 식별자 상수와 변수 등의 이름
1. 식별자 identifier 명명 규칙
- 영문, 한글 및 유니코드(대부분의 문자 표현) 글자, 숫자 사용 가능
- 특수문자는
$
또는_
- 숫자로 시작할 수 없음
- 공백(스페이스) 사용 불가
- 👉 식별자 규칙 MDN 문서
2. 예약어 reserved words
변수명이나 상수명으로 쓸 수 없는 것들
const let = 1;
let typeof = 2;
3. 💡 한글 변수/상수명
const 이름 = '홍길동';
let 나이 = 20;
console.log(이름, 나이);
- 예전에는 금기시(?)
- 오늘날에는 종종 사용하는 회사 있음
🤖 컴퓨터가 일하는 방식
CPU: 일하는 사람
- 컴퓨터의 뇌 - 작업을 진행하는 주체
보조기억장치 (SSD, HDD): 서랍
- 상대적으로 저장공간은 넓고 접근속도는 느림
- 소프트웨어(코드)가 저장되는 곳
메모리 (RAM): 책상 위 공간
- 상대적으로 저장공간은 좁고 접근속도는 빠름
- 사람(CPU)이 서랍(보조기억장치)에 든 데이터를 꺼내 올려두고 작업을 하는 공간
- 변수와 상수를 비롯한 데이터들이 이곳에 만들어지고 사용됨
- ⭐메모리를 효율적으로 사용하기 위한 지식과 노력 필요