본문 바로가기
TIL

153. [TypeScript] 기본타입 TIL.23.05.10

by 새싹_v 2023. 5. 10.
728x90


 

기본 타입의 종류

String, Number, Boolean, Object, Array, Tuple, Enum, Any, Void, Null, Undefined, Never

 

String

TS에서는 텍스트 데이터 타입을 string으로 표현.
JS처럼 TS도 큰따옴표 (""), 작은따옴표('')를 문자열 데이터를 감싸는 데 사용한다.
let str: string = '타입스크립트';

// : <- 타입 표기

str = 123; //에러
str = true; //에러
str = undefined; //에러

let Fullname: string = '니코';
let age: number = 123;
let intro: string = `이름은 ${Fullname}! 나는 ${age + 1}살이야`

console.log(intro) //이름은 니코! 나는 124살이야

 

Number

TS는 JS와 마찬가지로 10진수, 16진수 표현을 지원하고 ECMAscript 2015에서 소개된 2진수, 8진수 표현도 지원한다.
let num: number = 123;

let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal: number =0o744;

 

Boolean

참/거짓을 의미하는 boolean
let isTure: boolean = true;
let isFalse: boolean = false;

 

Array

TS는 어떤 변수가 배열임을 명시적으로 선언할 수 있다.
let arr: number[] = [1, 2, 3];
let array: Array<number> = [1, 2, 3];
let array2: Array<string> = ['a', 'b', 'c'];

let arr2: string[] = ['가', '나', '다'];
let arr3: boolean[] = [true, false];

 

Tuple

튜플 타입을 사용하면, 요소의 타입과 개수가 고정된 배열을 표현할 수 있다.
단, 요소들의 타입이 모두 같을 필요는 없다.
let a: [string, number];
a = ['hi', 1];
a = [1, 'hi']; //에러 string자리에 number, number자리에 string이 왔기 때문

a[2] = '안녕'; //에러 a에 세번재 요소 타입을 설정해주지 않았기 때문

let tuple: [string, number, boolean] = ['hi', 1, false];

 

Any

any는 모든 변수 타입을 커버가능함. (사용하기 좋지않음)
let str: any = '새싹';
let num: any = 123;
let arr: any = ['a', 2, false];

 

Void

함수에서 반환 값이 없는 경우
function a(): void {
	console.log('a');
}

 

Null

null은 어떤 값이 아무것도 없음을 나타낼 때 사용
let a: string | null = '안녕';
a = null;

let b: string | null = null;
b = '새싹';

 

Undefined

undefined는 변수나 속성에 할당된 값이 없거나, 함수의 인자를 생략하거나 반환값을 지정하지 않은 경우 발생
let a: number | undefined;
console.log(a); //undefined

function b(): number | undefined {
	return undefined;
}
console.log(b()); //undefined

 

Never

never 타입은 절대로 발생하지 않는 값을 나타내며, 일반적으로 오류를 나타내는 함수의 반환 타입으로 사용된다.
function a(): never {
	throw new Error('Error');
}

 

Object

object는 Js에서의 객체(Object)를 의미하는 타입이다.
다양한 속성과 값을 가질 수 있는 일반적인 객체를 의미
function printObject(obj: object): void {
	console.log(obj);
}

const champion = { name: '가렌', age: 23 };
const position = { position: 'TOP' };

printObject(champion); //{ name: '가렌', age: 23 }
printObject(position); //{ position: 'TOP' }

 

Enum

Enum은 연관된 값들을 하나의 이름 아래에 모아 정의할 수 있는 기능
enum Color {
	Red = 'red',
    Green = 'green',
    Blue = 'blue'
}

const selectColor = Color.Red;

console.log(selectColor) //red
----------
enum Color {
  Red,
  Green,
  Blue,
}

const selectColor = Color.Green;

console.log(selectColor) //1
728x90

댓글