ES5에서는 var을 썼지만, ES6부터는 let과 const 사용
var number = 100; // 변수 선언
var number = 200; // 재선언 해도 에러 나지 않음
let variable = 100; // 변수 선언
let variable = 200; // SyntaxError
const PI = 3.14; // 변수 선언
PI = 5.19; // TypeError: Assignment to constant variable.
- 한 번 변수를 선언해 놓으면 필요할 때 언제든 호출하여 사용 가능
- 값을 수정해야 할 때, 일일히 수정하지 않아도 변수만 수정하면 됨
- 변수명만 보고 어떤 값을 나타내는지 예상 가능
- 기본타입: 실제 '값'을 변수에 저장,
원본이 바뀌어도 복사본은 바뀌지 않음let str1 = 'today'; let str2 = str1; // str2 = 'today'
str1 = 'yesterday';
console.log(str1); // yesterday console.log(str2); // today
- 참조타입: 값이 저장된 '주소값'을 참조, 원본 바뀌면 복사본도 바뀜
- Undefined
변수를 선언만 하고 아무 값을 할당하지 않았을 때,
컴퓨터가 자동적으로 할당하는 기본값let variable; console.log(variable); // undefined
- Null
변수에 아무 값이 없음을 개발자가 명시적으로 표현하고 싶을 때,
개발자가 직접 할당let empty = null; console.log(empty); // null
Undefined와 Null은 value는 같지만(빈 값), type은 다름
Javascript에서 데이터타입들은 각 데이터 형식을 사용할 때 편리하도록
메서드를 제공함
let str = 'bla';
let new_str = str.repeat(3); // 문자열 반복
console.log(new_str); // blablabla
let number = 32;
let toBinary = number.toString(2); // 2진법으로 변환
console.log(toBinary); // 100000