타입스크립트에서는 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를 작성하면 코드 작성 시점에 바로 에러를 확인할 수 있다. 즉, 효율성이 매우매우 올라간다.👍
공부 초반이지만, 정말 유용하고 쓸 데가 많은 언어라고 생각된다. 비록 과정이 쉽지는 않겠지만....😇
그래도 할 수 있을거야. 난 나니까!!!!!!!!왕!!!!!!!!🥳