기본 타입

Sean·2021년 6월 12일
0

타입스크립트

목록 보기
2/3
post-thumbnail

자바스크립트 기본 타입

  • var 키워드는 절대 쓰지 말자!
    : babel로 최신 버전을 낮은 버전으로 변환 가능하므로 우리는 항상 good practice만 사용한다! → let, const

  • Primitive Type : number, string, boolean, bigint, symbol, null, undefined

  • Object Type : function, array ...

타입스크립트 기본 타입

  // number
  const num: number = -6;

  // string
  const str: string = 'hello';

  // boolean
  const boal: boolean = false;

  // undefined
  let name: undefined; // 💩

  // null
  let person: null; // 💩

  // unknown 💩
  let notSure: unknown = 0;

  // any 💩
  let anything: any = 0;

  // void
  function print(): void {
    console.log('hello');
    return; // 리턴값이 없을 때
  }

  // never
  function throwError(message: string): never {
    // message -> server (log)
    throw new Error(message);
    while (true) {}
  } // 절대 리턴되지 않는 경우

  // object
  let obj: object; // 💩

JS를 TS로 바꿔보기

  function add(num1: number, num2: number): number {
    return num1 + num2;
  }

  function fetchNum(id: string): Promise<number> {
    // code ...
    // code ...
    // code ...
    return new Promise((resolve, reject) => {
      resolve(100);
    });
  }

유용한 타입

  // Optional parameter
  function printName(firstName: string, lastName?: string) {
    console.log(firstName);
    console.log(lastName); // undefined
  }
  printName('Steve', 'Jobs');
  printName('Sean');

  // Default parameter
  function printMessage(message: string = 'default message') {
    console.log(message);
  }
  printMessage();

  // Rest parameter
  function addNumbers(...numbers: number[]): number {
    return numbers.reduce((a, b) => a + b);
  }
  console.log(addNumbers(1, 2));
  console.log(addNumbers(1, 2, 3, 4));
profile
Win or Learn

0개의 댓글