boolean의 값을 나타내는 것은 true와 false 밖에 없다.
let dog = true; let cat = false; console.log(typeof dog); // boolean console.log(typeof cat); // boolean
null은 의도적으로 값이 없음을 나타냅니다. 코드에서는 null로 표현 됩니다. 자바스크립트는 case-sensitive하므로 null은 Null과 NULL이랑은 다르다.
let dog = 'cat'; dog = null; // cat 정보가 제거됨
함수가 호출되었을때 값을 반환할 수 없을 때 null을 반환하기도 한다.
let file = document.querySelector('.myFile'); console.log(file); // null
자바스크립트의 설계상의 오류로 인해 typeof 연산자로 null 값을 연산해 보면 object가 나온다.
let dog = null; console.log(typeof dog); // object
값이 null인지 확인할때는 일치 연산자(===)를 꼭 사용하여야 한다.
let dog = null; console.log(typeof dog === null); // false console.log(dog === null); // true
선언 이후 값을 할당하지 않은 변수는 undefined 값을 가진다.
let dog; console.log(dog); // undefined
자바스크립트에서 숫자는 정수와 부동소수점만 존재한다.
let number = 8; // integer let price = 7.99; // floating point number
문자열 타입은 텍스트 데이터를 나타낸다. 자바스크립트의 문자열은 원시 타입이므로 변경 불가능(immutable)하다.
let string = 'dog'; string[0] = 'd'; // immutable console.log(string); // string
심볼은 ES6에서 새롭게 추가된 데이터 타입이다. 심볼 값은 유일한 값이므로 심볼 값을 property key로 갖는 property는 어떠한 propery와도 충돌하지 않습니다.
const obj = {}; const mySymbol = Symbol('mySymbol'); obj[mySymbol] = 123; console.log(obj[mySymbol]); // 123
Reference
https://poiemaweb.com/js-data-type-variable
https://www.codecademy.com/learn/introduction-to-javascript/modules/learn-javascript-introduction/cheatsheet