티스토리 뷰

TypeScript

[TypeScript] Void Return Type

Dongi 2022. 1. 14. 01:44

안녕하세요 동기 여러분! 오늘은 함수에서 리턴할 값이 없는 경우에 함수에 타입선언(Type annotation)을 무엇으로 해야하는지 알아보도록 합시다!

 

Void Return Type

아래의 코드를 보도록 합시다.

function printDongi(saySomething: string){
    console.log(`동기 코딩님! ${saySomething}!`);
}
  • printDongi라는 함수는 현재 리턴값이 없는 함수입니다.

 

지금까지 우리는 타입 선언(Type annotation, 타입 주석 달기)이 얼마나 유용하고 깔끔하게 코드를 정리할 수 있는지 알아봤었습니다. 이러한 이유 때문에 리턴값이 없는 함수에도 타입 선언(Type annotation, 타입 주석 달기)을 하여 코드를 알차게 만들어 주어야 합니다.

 


 

그렇다면 무엇으로 타입 선언을 할까요?

바로 void입니다. 스타크래프트2 마지막 확장팩 void of legacy의 그 void입니다. 공허, 빈공간이라는 뜻을 가지고 있는 영어단어이죠. 리턴값이 없으니까 void를 쓰면 됩니다. 아래의 코드를 봅시다.

function printDongi(saySomething: string):void{
    console.log(`동기 코딩님! ${saySomething}!`);
}

 


 

리턴값이 없는데 void대신 다른 타입을 넣으면 어떻게 될까

function printDongi(saySomething: string):string{
    console.log(`동기 코딩님! ${saySomething}!`);
}
  • 리턴값이 없는 함수에 타입을 string으로 선언하여 컴파일링을 해봅시다.

  • 에러를 살펴보면 '선언된 타입이 void도 any도 아닌 함수는 반드시 값을 리턴해야한다.'라고 말해주고 있습니다.
  • 이는 현재 함수에 리턴값이 없기 때문에 뜨는 에러이기 때문에 이 에러를 없애려면 소괄호 우측에 있는 string 대신에 void를 넣어주거나 리턴값을 문자(string) 타입으로 만들어 주면 됩니다.

 


 

오늘의 느낌

느낌적인 느낌

 

'TypeScript' 카테고리의 다른 글

[TypeScript] Arrays Introduction  (0) 2022.01.14
[TypeScript] Documenting Functions  (0) 2022.01.14
[TypeScript] Explicit Return Types  (0) 2022.01.14
[TypeScript] Inferring Return Types  (0) 2022.01.13
[TypeScript] Default Parameters  (0) 2022.01.13
최근에 올라온 글
최근에 달린 댓글
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
글 보관함