[Typescript] 타입 추론과 타입 명시

도현수·2022년 12월 13일
0

Typescript

목록 보기
1/6
post-custom-banner

타입스크립트에서는 Static Typing(정적 타이핑)을 지원한다. 즉, 타입을 선언하고, 그에 맞는 값만이 할당 or 반환되어야 한다.

📌타입 추론

타입 추론(Type Inference)이란 타입 표기가 없는 경우 스스로 코드를 분석해 타입을 유추하는 것을 말한다.

뭐...사실 너무 간단해서 뭐라고 써야할지도 모르겠다. 그냥 일반적인 자바스크립트 코드를 작성하는 것처럼 작성한다.

const Myname = 'Dohyeonsu'

단, 이 경우 타입 스크립트는 변수 Myname의 값으로 무조건 string이 들어와야 함으로 해석한다. 따라서

Myname에 string이 아닌 다른 타입을 할당하려 할 경우 에러를 볼 수 있다.

📌타입 명시

타입 명시(Type Anotations)란 변수 선언 시, 변수 값의 타입을 명시해 주는 것을 말한다.

타입 명시의 Syntax 또한 매우 간단하다.🥳

let(or const) 변수이름: 타입 = 값;

const Myname: string = 'Dohyeonsu'

이 경우 해당 변수에는 지정한 타입의 값만 할당할 수 있게 된다. 그렇다면, 만약 다른 타입의 값을 할당하려고하면 어떻게 될까? 🤔

다음과 같이 에러를 내보내주면서 number를 할당할 수 없다고 알려준다.

✚ 기본적으로 타입 명시보다는 타입 추론을 많이 쓰라고 하더라...왜냐면 코드가 더 짧아지니까. 근데 이건 직접 써보면 더 잘 와닿을 것 같다!


당연하지만, 변수가 아닌 함수의 인자와 리턴값에도 타입을 명시해줄 수 있다.

function sum(x: number, y:number): number {
    return x+y;
}

사실 위의 경우, 리턴값을 명시해주는건 별 쓸데없는 짓이긴 하다..(x하고 y가 number인디....)


이러한 에러는 런타임 이전에 검출한다. 따라서 vscode로 Typescript를 작성하면 코드 작성 시점에 바로 에러를 확인할 수 있다. 즉, 효율성이 매우매우 올라간다.👍
공부 초반이지만, 정말 유용하고 쓸 데가 많은 언어라고 생각된다. 비록 과정이 쉽지는 않겠지만....😇

그래도 할 수 있을거야. 난 나니까!!!!!!!!왕!!!!!!!!🥳

post-custom-banner

0개의 댓글