자바스크립트에서 값은 항상 문자열이나 숫자형 같은 특정한 자료형에 속한다.
자바스크립트에는 8가지 기본 자료형이 있다.
숫자형
let n = 123;
n = 12.345;
숫자형은 정수 및 부동소수점 숫자를 나타낸다.
숫자형과 관련된 연산은 다양한데, 곱셉, 나눗셈, 덧셈, 뺄셈 등이 대표적이다.
숫자형엔 일반적인 숫자 외에 Infinity, -Infinity, NaN 같은 특수 숫자 값이 포함된다.
Infinity는 무한대를 나타낸다.
일반적으로 0으로 나누면 무한대를 얻을 수 있다.
console.log( 1 / 0 );
console.log( Infinity );
NaN은 계산 중 에러가 발생했다는 것을 나타내주는 값이다.
부정확하거나 정의되지 않은 수학 연산을 사용하면 계산 중 에러가 발생하는데, 이때 NaN이 반환된다.
console.log( "글자" / 2 ); // NaN
NaN은 웬만해선 바뀌지 않는다. NaN에 어떤 추가 연산을 해도 결국 NaN이 반환된다.
BigInt
자바스크립트에선 내부 표현 방식 때문에 (2^53 - 1)(9007199254740991) 보다 큰 값 또는
-(2^53-1) 보다 작은 정수는 숫자형을 사용해 나타낼 수 없다.
BigInt 형은 길이에 상관없이 정수를 나타낼 수 있다.
BigInt 형 값은 정수 리터럴 끝에 n을 붙이면 만들 수 잇다.
// 끝에 'n'이 붙으면 BigInt형 자료입니다.
let bigInt = 1234567890123456789012345678901234567890n;
문자형
자바스크립트에선 문자열을 따옴표로 묶는다.
let str = "Hello";
let str2 = 'Single quotes are ok too';
let phrase = `can embed another ${str}`;
따옴표는 세 종류가 있다.
1. 큰따옴표 : "Hello"
2. 작은따옴표 : 'Hello'
3. 역 따옴표( 백틸, backtick ) : `Hello`
큰따옴표와 작은따옴표는 기본적인 값으로, 자바스크립트에서는 이 둘에 차이를 두지 않는다.
역 따옴표로 변수나 표현식을 감싼 후 ${...} 안에 넣어주면, 다음과 같이 원하는 변수나 표현식을
문자열 중간에 손쉽게 넣을 수 있다.
let name = "John";
// 변수를 문자열 중간에 삽입
console.log( `Hello, ${name}!` ); // Hello, John!
// 표현식을 문자열 중간에 삽입
console.log( `the result is ${1 + 2}` ); // the result is 3
Boolean 형
boolean형은 ture와 false 두 가지 값밖에 없는 자료형 이다.
boolean형은 긍정이나 부정을 나타내는 값을 저장할 때 사용한다.
let nameFieldChecked = true;
let ageFieldChecked = false;
null 값
null 값은 지금까지 소개한 자료형 중 어느 자료형에도 속하지 않는 값이다.
null 값은 오로지 null 값만 포함하는 별도의 자료형이다.
let age = null;
자바스크립트의 null은 다른 언어에서의 null과는 성격이 다르다.
다른 언어에서는 null을 존재하지 않는 객체에 대한 참조나 널 포인터를 나타낼 때 사용한다.
하지만 자바스크립트에서 null은 존재하지 않는 값, 비어 있는 값, 알 수 없는 값을 나타내는 데 사용한다.
위 예시를 들어 설명하자면 let age = null; 은 나이를 알 수 없거나 그 값이 비어있음을 보여준다. ( 해석의 영역 )
undefined 값
undefined 값도 null 값처럼 자신만의 자료형을 형성한다.
undefined는 값이 할당되지 않은 상태를 나타낼 때 사용한다.
변수는 선언했으나, 값을 할당하지 않았다면 해당 변수에 undefined가 자동으로 할당된다.
let age;
console.log(age); // 'undefined'가 출력됩니다.
변수에 undefined를 명시적으로 할당하는 것도 가능하다.
let age = 100;
// 값을 undefined로 바꿉니다.
age = undefined;
console.log(age); // "undefined"
하지만 이렇게 undefined를 직접 할당하는 것은 권장되지 않는다.
변수가 비어있거나 알 수 없는 상태라는 걸 나타낼 때는 null을 사용하는 것이 좋다.
undefined는 값이 할당되지 않은 변수의 초기값을 위해 예약어로 남겨두는 편이 낫다.
typeof 연산자
typeof 연산자는 인수의 자료형을 반환한다. 자료형에 따라 처리 방식을 다르게 하고 싶을 경우와
변수의 자료형을 빠르게 알아내고자 할 때 유용하다.
typeof 연산자는 두 가지 형태의 문법을 지원한다.
1. 연산자 : typeof x
2. 함수 : typeof(x)
typeof undefined // "undefined"
typeof 0 // "number"
typeof 10n // "bigint"
typeof true // "boolean"
typeof "foo" // "string"
typeof Symbol("id") // "symbol"
참고 : https://ko.javascript.info/types
자료형
ko.javascript.info
'Javascript' 카테고리의 다른 글
[Javascript] Express.js 프레임 워크 (0) | 2024.08.28 |
---|---|
[Javascript] Node.js (0) | 2024.08.27 |
[Javascript] 화살표함수 (0) | 2024.08.22 |
[Javascript] 프로토타입 ( Prototype ) (0) | 2024.08.22 |
[Javascript] Random - 난수 생성하기 (0) | 2024.08.21 |