본문 바로가기
📍 Front-End/🜸 TypeScript

[타입스크립트/TypeScript] 타입스크립트의 타입 ~ ~ ~

by 예리Yelee 2021. 7. 13.
반응형

타입스크립트를 사용하는 이유를 꼽으라면 타입/객체지향 정도로 꼽을 수 있겠다
타입스크립트는 자바스크립트와 달리 정적 타입의 언어이다.
변수의 타입을 설정할 수 있기에 개발자 입장에서 예기치 못한 에러를 미리 파악할 수 있는 큰 장점이 있다

예를 들어 자바스크립트의 경우 
아래의 코드처럼 하나의 변수에 number, string, object 등 타입에 상관없이 값을 할당할 수 있다

let text = 2;
text = 'hi!'
text = { key : value };

 

그러나 타입스크립트의 경우 타입을 설정할 수 있기에
안정적인 프로그래밍을 할 수 있다!

타입스크립트에서 타입을 알아보자 

1. number

  // number
  const num: number = 1;

 

2. string

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

 

3. boolean

  const boal: boolean = false;

 

4. undefined

undefined는 단독으로 쓰이는 경우가 거의 없고 아래와 같이 다른 타입과 함께 사용된다

  let age: number | undefined;
  age = undefined;
  age = 1;
  function find(): number | undefined {
    return undefined;
  }

 

5. null

null도 단독으로 쓰이는 경우가 거의 없고 아래와 같이 다른 타입과 함께 사용된다

  let str: string | null;

 

여기까지는 기존 자바스크립트에서 다루는 타입과 큰 차이가 없다
이제부터 집 중 ! 🤓

 

6. unknown

어떤 타입의 값이 들어갈지 모를 때 사용!
그러나 가급적 사용 지양하는 편이 좋다

let notSure: unknown = 0;
notSure = 'hi';
notSure = true;

 

7. any

any에는 모든 타입의 변수를 다 담을 수 있다.
근데 any를 사용하면 타입스크립트를 사용하는 이유가....?
얘도 가급적 사용을 지양하는것이 좋다

let anything: any = 0;
anything = 'hello';

 

8. void

함수에서 리턴값이 없을 때 사용! (변수에서 사용하는 경우는 드물다)
생략 가능하다.

function sayHi(): void {
  console.log('hi');
  return;
}

 

9. never

항상 오류를 출력하거나 리턴 값을 절대로 내보내지 않는다

function throwError(message: string): never {
  throw new Error(message);
}
function throwError(message: string): never {
  while ( true ) { 
   // code
  }
}

 

10. object

object 타입도 가급적 사용을 지양하는 것이 좋다

function person(obj: object) {}
person({ name: 'yelee' });
person({ age: 20 });
반응형

댓글