🔍 자바스크립트의 데이터 타입
자바스크립트는 상대적으로 데이터 타입이 유연한 언어 => 데이터 타입이 상황에 따라 변할 수 있음!
ex 1) 숫자와 문자열 간의 유연한 연산
◽ 1(숫자) + "2"(문자열) => "1"(문자열) + "2"(문자열) => "12"(문자열)
◽ 3(숫자) * "4"(문자열) => 3(숫자) * 4(숫자) => 12(숫자)
ex 2) 변수에 다양한 타입의 값으로 재할당 가능
따라서 데이터 타입을 명확하게 이해하고 있어야 함! Why? 💥예상치 못한 결과로 오류가 발생할 수 있으므로
ex)
☁ 8가지의 데이터 타입
◻ 7가지의 기본형
◽ Number
◽ String
◽ Boolean
◽ null
◽ undefined
◽ Symbol (ES 2015 추가, 유일한 값을 만들 때 사용)
◽ BigInt (ES 2020 추가, 매우 큰 숫자를 다룰 때 사용)
◻ 1가지의 참조형
◽ Object
✅ 데이터 타입을 확인할 수 있는 연산자 typeof
아래와 같이 두 가지의 방법으로 사용할 수 있음
📍 추가 정보 (공식 문서는 여기)
◽ typeof null의 결과는 null이 아닌 object
JS가 처음 구현되었을 때의 문법 설계로 인한 결과, 자세한 내용은 여기
◽ typeof 함수의 결과는 object가 아닌 function
JS에서 함수는 객체로 취급!
➡ Boolean 값으로 형 변환
◻ False로 평가되는 값 = Falsy 값
◽ false
◽ null
◽ undefined
◽ NaN
◽ 0
◽ ' ' (빈 문자열)
◻ True로 평가되는 값 = Truthy 값
◽ 그 외 나머지 값들
☁ null과 undefined
◽ null: "값이 없다"는 것을 의도적으로 표현한 경우 => 의도적인 없음!!
◽ undefined: 선언을 하고 값을 지정해주지 않은 경우 => 처음부터 없음!!
참고) 동등 비교와 일치 비교
'Front-end > JS' 카테고리의 다른 글
[JS] 자바스크립트의 형 변환 - 명시적 변환 (0) | 2022.10.29 |
---|---|
자바스크립트 함수 (0) | 2022.07.06 |
자바스크립트 객체 (0) | 2022.07.06 |
자바스크립트 기초 문법 (0) | 2022.07.05 |