1. 정의
변수란?
데이터 저장공간
값의 위치를 가르키는 상징적인 이름
자바스크립트는 데이터를 저장하기 위해서 변수를 선언하여 사용한다
변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 or 그 메모리공간을 식별하기 위해 붙인 이름이다.
🔫 <주의>식별자는 값이 아니라 메모리 주소를 기억하고 있다 🔫var score; var score=80;
변수를 할당할 때는 이전 값 undefinded가 저장되어 있던 메모리 공간을 지우고 그 메모리 공간에 새롭게 80을 저장하는 것이 아니라, 새로운 메모리 공간을 확보하고 그곳에 할당값 80을 저장한다는 점에 주의하자!!
2. 변수선언과 할당
var score; // 변수선언
score = 80; // 값의 할당
3. 변수선언단계 2가지
1️⃣ 선언단계: 변수이름을 등록해서 자바스크립트 엔진에 변수의 존재를 알린다
2️⃣ 초기화단계: 값을 저장하기 위한 메모리공간을 확보하고 암묵적으로 undefined를 할당해 초기화한다.
var score;
score라는 변수를 선언하고 할당을 하지 않으면, 메모리 공간에 이름을 지정하고 undefined를 할당하는 작업을 한다.
4. 변수선언방법 3가지
- var
- let
- const
1️⃣ var
자바스크립트 초창기 변수선언키워드
변수의 중복선언, 재할당 모두 가능
이미 똑같은 이름의 변수공간이 선언이 되어있더라도 다시 한번 그 공간에 대한 지정이 가능하다(재할당)
➡️ 대규모 프로젝트시에 위험성이 있다
var num =10;
console.log(num);
var num =20;
console.log(num);
2️⃣ let
변수의 중복선언 불가능, 재할당은 가능
let num =10;
console.log(num);
let num =20;
console.log(num);
이미 num이라는 변수가 선언되었다는 에러메시지가 출력된다. (ReferenceError 참조에러)
3️⃣ const
변수의 중복선언, 재할당 불가능
const 키워드로 선언한 변수는 반드시 선언과 동시에 초기화해야한다.
const foo=1; (O)
const foo; (X)
var, let, const 차이점 정리
var | let | const | |
중복선언 | O | X | X |
재할당 | O | O | X |
✍️직접 공부하고 기록한 내용입니다(모던자바스크립트)📚
(직접 velog에 작성한 글 이전)
'JavaScript > JS' 카테고리의 다른 글
자바스크립트 객체, 구조분해할당 (0) | 2023.02.26 |
---|---|
자바스크립트 구조분해할당(배열과 객체) (0) | 2023.02.25 |
자바스크립트(JS) - 생성자 함수 (0) | 2023.02.20 |
자바스크립트 클로저(JavaScript Closure) (1) | 2023.01.26 |
자바스크립트 동기, 비동기 정의 / 자바스크립트 런타임 (0) | 2023.01.16 |