[TypeScript] 타입스크립트를 사용하는 이유, 기본 타입

wonyu·2022년 6월 9일
0

typescript

목록 보기
1/3

타입스크립트란?

  • 자바스크립트에 타입을 부여한 언어 (자바스크립트의 확장된 언어)
  • 자바스크립트와 달리 브라우저에서 실행하기 위해 컴파일 과정 필요

타입스크립트를 사용하는 이유

  1. 에러의 사전 방지
    • 예시
      // math.ts
      function sum(a: number, b: number) {
        return a + b;
      }
      sum('10', '20'); // Error: '10'은 number에 할당될 수 없습니다.
  2. 개발 생산성 향상
    • 현재 변수의 타입에 따라 가능한 API를 미리보기로 띄워줌

타입스크립트 기본 타입

  • Boolean
    let isModalOpen: boolean = true;
    // ':'를 사용해서 타입 정의하는 것 -> 타입 표기(Type Annotation) 방식
  • Number
    let num: number = 10;
  • String
    let greeting: string = 'hi';
  • Object
  • Array
    let arr1: number[] = [1, 2, 3];
    let arr2: Array<number> = [1, 2, 3];  // 제네릭을 사용하여 선언
  • Tuple
    • 배열의 길이가 고정되고, 각 요소의 타입이 지정되어 있는 배열

      let arr: [string, number] = ['hi', 10];
  • Enum
    • 열거형. 이름이 있는 특정 값(상수)들의 집합

    • 숫자, 문자열 기반 enum 제공

    • 아래 예시에서 Capt , Thor 같은 상수들이 숫자 또는 문자열 값을 갖는다. 이게 enum인 것..이라고 이해했다. (참고: TypeScript 공식 문서 enums)

      enum Avengers { Capt, Thor }
      let hero1: Avengers = Avengers.Capt;
      
      // 인덱싱 가능
      let hero2: Avengers = Avengers[0];
      
      // 인덱스를 임의로 변경 가능
      enum Avengers {Capt = 2, Ironman, Thor }
      let hero: Avengers = Avengers[2];  // Capt
      let hero: Avengers = Avengers[3];  // Ironman
  • Any
    • 모든 타입에 대해 허용한다는 뜻

      let str: any = 'hi';
      let num: any = 10;
      let arr: any = ['a', 2, true];
  • Void
    • 변수에는 undefined , null 만 할당하고 함수에는 반환값을 설정할 수 없는 타입

      let unuseful: void = undefined;
      function notuse(): void {
      	console.log('반환값은 없다!');
      }
  • Null
  • Undefined
  • Never
    • 함수의 끝에 절대 도달하지 않는다는 의미를 지닌 타입

      function neverEnd(): Never {
          while (true) {
              // ...
          }
      }

0개의 댓글