- 프로그램에서 다룰 수 있는 값의 종류를 의미한다.
- 자바스크립트에서는 여러 가지 형태의 타입을 미리 정의하여 제공하고 있으며 이것을 기본 타입이라고 한다.
- 기본 타입은 크게 원시 타입과 객체 타입으로 구분할 수 있다.
- 타입마다 다른 속성과 메서드가 존재한다.
- typeof 연산자를 활용하여 특정 값의 타입을 확인할 수 있다.
- 타입 비교시 엄밀한 비교(===, !==)를 사용한다.
let num1 = 10; // 10
let num2 = 10.11; // 10.11
let num3 = 10e6; // 10000000
let num4 = 10e-6; // 0.00001
let str1 = "큰 따옴표"; // '큰 따옴표'
let str2 = '작은 따옴표'; // '작은 따옴표'
let str3 = "큰 따옴표 안에 '작은 따옴표' 포함 가능" // "큰 따옴표 안에 '작은 따옴표' 포함 가능"
let str4 = '작은 따옴표 안에 "큰 따옴표" 포함 가능' // '작은 따옴표 안에 "큰 따옴표" 포함 가능'
let strSum = str1 + str2 // '큰 따옴표작은 따옴표'
boolean은 참(true)과 거짓(false)을 표현한다.
let a = 10;
let b = 9;
console.log(a === b); // false
let bool = true;
console.log(typeof bool); // boolean
let a; // undefined
console.log(typeof a); // undefined
let a = null; // null
console.log(typeof a); // object
let sym1 = Symbol('id');
let sym2 = Symbol('id');
console.log(sym1); // Symbol(id)
console.log(sym2); // Symbol(id)
console.log(typeof sym1); // symbol
console.log(typeof sym2); // symbol
console.log(sym1 === sym2); // false
let a = '1';
let b = 1;
let c;
console.log(typeof a); // string
console.log(typeof b); // number
console.log(typeof c); // undefined
console.log(typeof a * b;) // NaN(Not a Number, number type)