타입 추론 (Type Inference)

soohyunee·2023년 4월 12일
0

TypeScript

목록 보기
3/20
post-thumbnail

1. 정적 타이핑 (Static Typing)

  • 타입스크립트는 정적 타이핑 기능을 자바스크립트 언어에 제공
  • 타입을 선언하고, 선언된 타입에 맞는 값만이 할당 또는 반환 되어야 함

2. 타입 추론

//javascript
let a = 10;
a = 'hello'; // 타입이 달라도 재할당 가능
//typescript
let a = 5;
a = 'hello'; // 에러 메시지 나옴, 컴파일 되지 않음
a = 10; // 에러 사라짐, 컴파일 가능
  • 변수의 할당값이 숫자였기 때문에 타입 추론에 의해 변수의 타입은 숫자로 결정
  • 타입스크립트에서는 타입 표기가 없는 경우 코드를 읽고 분석하여 타입을 유추해낼 수 있음

let student = {
    name: 'Jake', 
    course: 'Getting Started with TypeScript', 
    codingIQ: 80, 
    code: function(){  
        console.log('brain is working hard');
    }
}

student.name = 10; // 에러
  • 객체 속의 프로퍼티 할당값을 검사하고, 할당값의 타입을 바탕으로 객체 프로퍼티의 타입 추론

function caculateCodingIQ (lostPoints) {
	return 100 - lostPoints;
}
  • value를 리턴하는 함수를 만들면, 타입스크립트는 주어진 정보를 사용하여 코드를 분석함
  • 리턴 value 타입을 타입 추론을 통해서 정함
  • 함수의 파라미터 타입을 명시하지 않아도 뺄셈 연산자를 통해서 결과물이 숫자가 될 것이라고 추론

참고 : 땅콩코딩

profile
FrontEnd Developer

0개의 댓글