변수(variable)는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름
변수에 값을 저장하는 것
변수에 저장된 값을 읽어 들이는 것
좋은 이름, 변수에 저장된 값의 의미를 파악할 수 있는 변수 이름은 가독성을 높혀준다.
개발자의 의도를 나타내는 명확한 네이밍은 코드를 이해하기 쉽게 만들며, 협업과 품질 향상에 도움이 된다.
변수를 생성하는 것
Deep: 메모리 공간을 확보한 뒤, 변수 이름과 확보된 메모리 공간의 주소를 연결(binding)해서 저장할 수 있게 하는 것
var로 변수 선언시 중복 선언 가능
var price = 100; // 결과값 100
var price = 200; // 결과값 200
var price = 300; // 결과값 300
let
변수명을 중복으로 선언하면 에러 발생, 값을 재할당 하는 것은 가능
let a = 100;
consolel.log(a) // 결과값 100
let a = 200;
console.log(a) // 에러 발생
// SyntaxError: Identifier 'a' has already been declared
// 중복 선언 불가
a = 300;
consolel.log(a) // 결과값 300
// 값을 재할당 하는 것은 가능
const
"상수" 변하지 않는 값을 선언할때
const a = 100;
consolel.log(a) // 결과값 100
const a = 200;
console.log(a) // 에러 발생
// SyntaxError: Identifier 'a' has already been declared
// 중복 선언 불가
a = 300; // 에러 발생
// Assignment to constant variable.
// 값을 재할당 하는 것도 불가
var의 사용은 변수 선언과 초기화 단계가 동시에 진행된다. undefined를 할당해 초기화