🍧 숫자 타입: 정수와 실수 구분없이 하나의 숫자 타입만 존재합니다.
숫자 타입은 실수 외에도 세 가지 특별한 값도 표현할 수 있습니다.
console.log(10/0) //Infinity
console.log(10/-0) //-Infinity
console.log(1 * 'String'); // Nan
🍧문자열 타입: 텍스트 데이터를 나타내는데 사용합니다.
🍧템플릿 리터럴: 멀티라인(2줄 이상의) 문자열, 표현식 삽입, 태그드 탬플릿 등 편리한 문자열 처리 기능
/n(줄바꿈),/t(탭) 등의 이스케이프 시퀀스를 쓰지 않고도 줄바꿈, 공백이 타이핑한 대로 적용됩니다.
var template = `<ul>
<li><a href="#">HOME</a></li>
<ul>`;
이걸 콘솔로 찍어보면 아래처럼 나옵니다.
<ul>
<li><a href="#">HOME</a></li>
<ul>
var first = "Ung-mo"
var last = "Lee";
console.log(`MY name is ${first} ${last}.`) // My name is Ung-mo Lee.
${ }으로 표현식을 감쌉니다. 평가결과가 문자열이 아니더라도 문자열 타입으로 강제 변환됩니다.
🍧undefined : 자바스크립트 엔진이 변수를 초기화할 때 사용하는 값입니다. (암묵적 초기화)
변수에 값이 없다는 것을 명시하고 싶을 때는 null을 씁니다.
🍧null : 변수에 값이 없다는 것을 의도적으로 명시합니다.
함수가 유효한 값을 반환할 수 없을 경우 null을 반환하기도 합니다.
<body>
<script>
var element = document.querySelector('.myClass');
console.log(element); //null
</script>
</body>
🍧심벌 타입: 다른 값과 중복되지 않는 유일무이한 값. 객체의 유일한 프로퍼티 키를 만들기 위해 사용합니다.
var key = Symbol('key'); // Symbol 함수를 호출해 생성합니다.
🍧정적 타입 언어: 변수 선언 시점에 변수 타입이 결정됩니다. 타입은 바꿀 수 없습니다.
🍧동적 타입 언어: 할당(값)에 의해 타입이 결정됩니다. 재할당(값변경)에 의해 변수의 타입을 자유롭게(동적으로) 바꿀 수 있습니다.