티스토리 뷰

안녕하세요 동기 여러분! 오늘은 타입스크립트가 리턴되어 오는 값의 타입도 추론하여 에러를 띄운다는 사실에 대해 알아봅시다!

 

Inferring Return Types

function sayHi(name: string) {
  return `Hi! ${name}!`;
}

const dongiHi = sayHi('Dongi');

 

  • sayHi라는 함수에 매개 변수 name에 타입 문자(string)을 선언하였고
  • 리턴값으로 Hi ${name}!을 설정해두었습니다.
  • 새로운 변수를 선언하는데 변수의 이름을 dongiHi로 그의 값은 함수 sayHi와 독립 변수로 Dongi를 넣어두었습니다.

 

실행 시 어떻게 이 값들이 이동하는지 알아봅시다.

값들이 어떻게 이동하는지를 숙지하고 다음 코드를 봅시다.

 


리턴값 추론

function maxRamen(counts: number) {
  return `${counts}개의 라면을 먹을 수 있다.`;
}

const meRamen: number = maxRamen(5);

위의 코드를 컴파일링 하면 아래와 같은 결과가 나옵니다.

에러를 보면 '문자 타입은 숫자 타입에 선언될 수 없습니다.'라고 나옵니다.

에에이이잉? 이게 무슨 소리야 난 분명히 숫자를 넣었고 타입 선언도 모두 숫자로 해놨는데?

 

에러가 난 이유

에러가 난 이유는 코드의 두 번째 줄과 다섯 번째 줄을 보면 알 수 있습니다.

return `${counts}개의 라면을 먹을 수 있다.`;는 문자 타입입니다. 그 리턴값이 meRamen에 선언이 되려고 하는데 meRamen은 이미 숫자 타입으로 선언이 되어 있는 상태이기 때문에 에러가 생기는 것입니다. ( meRamen: number )

 


 

결론

타입스크립트는 리턴값의 타입도 추론하여 알아낸다.

 


 

오늘의 느낌

그래 니 잘났다 타입스크립트....ㅋㅋㅋ

'TypeScript' 카테고리의 다른 글

[TypeScript] Void Return Type  (0) 2022.01.14
[TypeScript] Explicit Return Types  (0) 2022.01.14
[TypeScript] Default Parameters  (0) 2022.01.13
[TypeScript] Optional Parameters  (0) 2022.01.12
[TypeScript] Parameter Type Annotations  (0) 2022.01.12
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함