Eun_Frontend
  • [TypeScript] TypeScript 공부일지: void, never [6/4 study]
    2024년 06월 04일 12시 21분 14초에 업로드 된 글입니다.
    작성자: 동혁이

     

     

    TypeScript 공부일지: void, never

     

     


    ❗️주의

    지극히 개인 공부한 내용을 올린 거기 때문에 이해하지 못할 수도 있음

    ❗️void


    void -> 공허 -> 아무것도 없다.
    void -> 아무것도 없음을 의미하는 타입

    // 리턴값 타입 지정 가능
    function func1(): string {
      return "hello";
    }
    
    function func2() {
      console.log("hello");
    }
    
    let a: void;
    // a = 1;
    // a = "hello";
    a = undefined;

     

    ❗️never


    never -> 존재하지 않는
    불가능한 타입

    // while (true) {} <- 이거는 무한루프 돔
    // 정상적으로 종료될 수 없어서 반환값이 있는데 모순일때 never 사용, 모순이므로 void 사용불가
    function func3(): never {
      while (true) {}
    }
    
    // JS는 프로그램 실행 중에 throw new Error(); 에러를 던져줄 수 있음
    // 이런 함수의 경우에도 실행되면 바로 프로그램이 중지될 거기 때문에 반환 값 타입으로 never 정의
    function func4(): never {
      throw new Error();
    }
    
    // 변수에 정의하면 어떤 값도 담을 수 없음
    // undefined를 담을 수 있는 void와 달리 never는 undefined 담을 수 없음
    // 그 어떠한 값도 절대 담을 수 없음 ex) tsconfig.json 수정해도 아무것도 안됨
    let b: never;

     

    댓글