[TS] 기본 타입

ddoni·2021년 2월 16일
0

기본 타입

타입스크립트는 자바스크립트와 거의 동일한 데이터 타입을 지원한다.

boolean, number, string, array

//boolean type
let isDone: boolean = false;

//number type
const num: number = 4;

//string type
let color: string = "blue";
let sentence: string = `The sky is ${color}`;

//배열타입에는 두가지 방법이 있음
//1.배열요소를 나타내는 타입 뒤에 [] 붙이기
let list: number[] = [1, 2, 3];
//2. Generic array type
let lists: Array<number> = [1, 2, 3];

tuple

//Tuple Type
//요소의 타입과 갯수가 고정된 배열을 표현 할 수 있다.

let x: [string, number];
x = ["hello", 3];
x = [3, "hello"]; //오류 발생

enum

//열거(Enum)
//표준 자료형 집합과 사용하기 유용한 데이터형
enum Color {
  Red,
  Green,
  Yellow,
}

let c: Color = Color.Green;

//기본적으로 0부터 시작에서 멤버들의 번호를 매긴다
//번호는 수동으로 재할당 가능하다!
enum Weather {
  Spring = 1,
  Summer,
  Autumn = 4,
  Winter,
}

let seasonName: string = Weather[4];
//매겨진 번호를 활용하여 enum 멤버의 이름을 알수 있다.
console.log(seasonName); //Autumn

any

//any
//애플리케이션을 만들때 값의 타입을 알지 못한 경우 사용하는 타입
let value: any = "hi";
value = 555;
value = true;

✨ 타입의 일부만 알고 전체는 알지 못할때 유용하다

void

//void
//어떤 타입도 존재 할 수 없음을 의미(any와 반대 개념)
//보통 함수에 리턴값이 없을 때 리턴타입을 표현하기 위해 쓰임

function greeting(): void {
  console.log("Hi");
}

✨ void를 타입 변수에 선언하는 것은 유용하지 않다 → 변수에는 null 또는 undefined만 할당 가능하기 때문이다

null, undefined

// 이 밖에 이 변수들에 할당할 수 있는 값이 없습니다!
let u: undefined = undefined;
let n: null = null;

never

//never
//절대 발생할 수 없는 타입을 나타낸다
function error(msg: string): never {
  throw new Error(msg);
}

Object

원시 타입이 아닌 타입

Type assertions

//타입단언(Type assertions)
//타입단언은 개발자가 값에 대해 더 잘 알고 있을 때 컴파일러에게 '내가 무엇을 하는지 잘안다'라고 말해주는 방법

//1. angle-bracket 방법
let val: any = "this is a string";
let valLength: number = (<string>val).length;

//2. as- syntax
let val: any = "this is a string";
let valLength: number = (val as string).length;

0개의 댓글