Front-end/JS

[JS] 자바스크립트의 데이터 타입

조 수빈 2022. 10. 4. 17:37

🔍 자바스크립트의 데이터 타입

자바스크립트는 상대적으로 데이터 타입이 유연한 언어 => 데이터 타입이 상황에 따라 변할 수 있음!

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