자료형
자바스크립트는 8가지 기본 자료형을 갖음
특징
- 동적타입(dynamically typed)언어
- 자료의 타입은 있지만 변수에 저장되는 값의 타입은 언제든지 바뀔 수 있음
- 자바스크립트의 변수는 자료형에 관계없이 모든 데이터일 수 있으며, 변수가 문자열일 수 있고 숫자가 될 수 도 있음
- let message = "hello"; message = 12345;
1. 숫자형(number type)
정수 및 부동 소수점 숫자(floating point number)를 나타냄
숫자형의 종류
1) 일반적인 숫자
2) 특수 숫자값(special numeric value)
- Infinity, -Infinity
어떤 숫자보다 더 큰 특수 값, 무한대(♾️)를 나타냄
- NaN
계산 중 에러 발생을 나타내주는 값
부정확하거나 정의되지 않은 수학 연산을 사용하면 계산 중에 에러가 발생하고 NaN이 반환됨
2. BigInt
길이의 제약 없이 정수를 다룰 수 있게 해주는 숫자형 -> 아주 큰 숫자를 사용해야하는 경우 사용
정수 리터럴 끝에 n을 붙이거나 BigInt를 호출하면 문자열이나 숫자를 가지고 BigInt 타입의 값을 만들 수 있음
// 끝에 'n'이 붙으면 BigInt형 자료
const bigint = 1234567890123456789012345678901234567890n;
const sameBigint = BigInt("1234567890123456789012345678901234567890");
const bigintFromNumber = BigInt(10); // 10n과 동일합니다.
3. 문자형
문자열(string)을 큰따옴표("")나 작은따옴표('')로 묶어서 표현
let str = "sky";
let str2 = 'kim';
4. 논리형(boolean)
true와 false 두 가지 값밖에 없는 자료형
5. null
null 값은 오로지 null 값만 포함하는 별도의 자료형
존재하지 않는(nothing) 값, 비어있는(empty) 값, 알 수 없는(unknown) 값을 나타냄
let age = null; // age를 알 수 없거나, 그 값이 비어있음
6. undefined
변수는 선언했지만 값이 할당되지 않은 상태라면 undefined가 자동 할당됨
let age;
alert(age); // undefined 출력
7. 객체(object)와 심볼(symbol)
객체(object)형: 객체는 원시(primitive) 자료형과 다르게 데이터 컬렉션이나 복잡한 개체(entity)를 표현할 수 있음
심볼(symbol)형: 객체의 고유한 식별자(unique identifier)를 만들 때 사용
8. typeof연산자
인수의 자료형 반환
자료형에 따라 처리 방식을 다르게 하거나, 변수의 자료형을 알아낼 때 유용
두 가지 형태의 문법을 지원함(괄호가 있어도되고 없어도 됨)
// 연산자
typeof x
// 함수
typeof(x)
'Front-end > JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트 기본 - 연산자 (0) | 2023.10.23 |
---|---|
[JavaScript] 자바스크립트 기본 - 형변환(type conversion) (1) | 2023.10.23 |
[JavaScript] 템플릿 리터럴(Template literals), 태그드 리터럴(tagged literals) (0) | 2023.07.01 |
[JavaScript ES6] 변수(variable) var let const 와 Hoisting, 전역변수, 참조 (0) | 2023.07.01 |
[JavaScript] Arrow function 화살표 함수 (0) | 2023.07.01 |