[0624] 타입스크립트

한별·2024년 7월 2일

스파르타 내배캠 TIL

목록 보기
45/63

타입스크립트란?

  • JavaScript + 타입

왜 사용하는 걸까

  • 컴파일 시에 타입 오류를 발견할 수 있음 + 에러 메시지가 명확함
  • 프로젝트 사이즈가 커지면 자유도 & 유연성은 독이 됨 → TypeScript는 타입을 엄격히 검사
  • JavaScript의 SuperSet이므로 JavaScript와 완벽하게 호환

설치 및 사용

# 프로젝트 내에 설치
npm install -D typescript

# 실행
npx tsc

# 컴파일
tsc hello-world.ts

# 설정 파일 생성
tsc --init

주요 타입

const n: number = 5;
const s: string = "Alice";
const b: boolean = true;
const a: any = "Hello";
const u: undefined = undefined;
const l: null = null;

function someFunction(value: number, gap?: number = 1): number {
  return value + gap
}
const someFunction: (someParam: string) => number = (someParam) => 5

const o: { a: string, b: number } = { a: "hello", b: 100 }

interface vs type

interface

  • interface 키워드는 객체의 형태를 정의
    interface User {
      id: number;
      name: string;
    }

type

  • interface보다 더 유연한 타입 정의가 가능
  • 객체뿐 아니라 다양한 타입을 정의
  • 유니언 또는 인터섹션 타입과 같은 고급 타입을 표현하는 데 더 적합

as

  • 컴퓨터는 모르지만 우리는 확실히 알고 있는 정확한 타입을 컴퓨터에게 알려줄 때 사용 = type assertion (타입 단언)
function someFunction(): string | number {
	return 5;
}

const a = someFunction() as number;

Generic Type

  • 한 번 정의한 함수가 매개변수를 이용하여 재사용 될 수 있는 것처럼 제너릭을 이용하면 타입을 재사용 할 수 있다.
profile
글 잘 쓰고 싶어요

0개의 댓글