동적타입언어인 자바스트립트!(정적타입언어에는 C나 Java와 같은 언어가 있다고 한다.) 변수에 저장된 데이터 타입을 동적으로 바꿀 수 있는 자바스크립트는 변수에 다양한 데이터 타입을 담을 수 있는데, 그 종류는 아래와 같다!
원시타입(primitive type) | 참조타입(reference type) |
---|---|
값을 그대로 할당한다. | 값이 저장된 주소값을 할당한다. |
Number | Object |
String | - Function |
Boolean | - Array |
Null | - 정규식 |
Undefined |
자바스크립트에서는 산술연산자를 이용하여 숫자들의 사칙연산+, -, *, /
등의 연산을 할 수 있다.
문자열은 (작은/큰)따옴표로 시작해서 (작은/큰)따옴표로 끝나면 따옴표 안의 내용을 문자열로 인식한다.
console.log("Hello world").length; //11
console.log("Hello world").toUpperCase; //"HELLO WORLD"
console.log("Hello world").indexOf('o'); //4
console.log("Hello world").indexOf('d'); //10
불리언은 true
와 false
의 값을 가지는 논리 데이터 타입이다! 불리언 타입은 Boolean()
함수를 통해 검증될 수 있다.
console.log(Boolean("hello")); //true
console.log(Boolean("")); //false
console.log(Boolean(1)); //true
console.log(Boolean(-1)); //true
console.log(Boolean(0)); //false
✔️ true 로 변환되는 값
✔️ false 로 변환되는 값
null
는 값이 없음을, undefined
는 초기화되지 않았거나 값이 할당되지 않았음()을 뜻한다.
null은 의도적으로 비어있는 값을 부여한 것인데, 그 데이터 타입을 확인해보면 object인 것을 알 수 있다.
let a = null;
console.log(a); // null
console.log(typeof a); // object
undefined는 아래와 같이 처음부터 어떠한 값도 할당되지 않았음(아래는 변수 b에 어떠한 값도 할당되지 않음)을 뜻한다.
let b;
console.log(b); // undefined