[TypeScript] 타입 지정

gu·2023년 1월 12일

TypeScript

목록 보기
2/13

🔍 타입 지정하기

<script>
	let 이름 :string ="gyu"; 
</script>

string, number, boolean, bigint, null, undefined, [], {} 등 타입적용 가능

  • 배열타입 지정시

    let 과일 :string[] = ["apple", "orange", "lemon"] 
    //  이 변수에는 string이 담긴 array만 들어올수있다.
  • object자료 타입지정

    let 회원 :{member1:string,member2:number}={member1:"규리",member2:1}
  • class 타입지정

    <script>
      class User{
          name:string;// 미리변수를 만들어서 타입지정을 해줘야함
          constructor(name:string){
              this.name = name;
          }
      }
    </script>
  • union type

    <script>
      let 번호 :string | number = '1' // 다양한 타입이 들어올 수 있게 하려면 union type(타입2개이상합친 새로운 타입만들기)
    </script>
  • 함수에 타입지정

    <script>
    function 함수(x? :number) :number { //리턴값도 타입지정 가능
        return x * 2
    }
    </script>
    - 리턴값이 없으면 void타입 활용가능(리턴타입입력에 void입력)
    - 자스와는 다르게 타입지정된 파라미터는 필수!!!
    - 파라미터가 옵션일 경우엔 파라미터?:타입
    - ?연산자는 들어올수도있다라는 뜻이지만 undefined가 포함된 유니온형식과 같다.
  • | 이용해 여러타입 지정
    <script>
      let 회원들 :(number | string)[] = [1, "2", 3]; //숫자 혹은 문자가 가능한 array/object타입지정
    </script>

💡 any, unknown 타입

  1. any타입
    • any타입 지정 시 모든 자료형 허용 타입실드 해제문법으로 일반 js변수로 만들고싶으면 사용한다.
    • 타입 관련 버그가 발생해도 잡아주지않는다.
  2. unknown 타입
    • 모든 자료형허용하며 any보다 안전하다.
    • unknown 타입인 변수를 조작하려면 내가 조작할 변수의 타입이 무엇인지 확실하게 체크하는 narrowing 또는 assertion 스킬을 사용해야한다.

0개의 댓글