반응형
// Function parameter type annotations:
const doSomething = (person: string, age: number, isFunny: boolean) => {};
// Return type annotation:
function greet(person: string = "stranger"): string {
return `Hi there, ${person}!`;
}
function square(num: number): number {
return num * num;
}
square(3);
greet("Tonya Harding");
doSomething("ChickenFace", 78, true);
함수 파라미터 어노테이션
이전 강의에서 제대로 언급하지 않은 것이 원하는 만큼 파라미터를 가질 수 있다는 것입니다. JavaScript와 마찬가지로 가능한 타입만 파라미터로 가질 수 있습니다.
또 doSomething 변수에 저장된 화살표 함수를 써보겠습니다. JavaScript의 다른 함수 문장을 보여드리기 위한 것입니다. 이 함수의 파라미터 person에는 문자열 타입이 오고 age에는 숫자, isFunny에는 불리언 타입이 옵니다. 이렇게 세 가지 다른 파라미터가 있습니다.
문자와 숫자, 불리언이 타입으로 옵니다. 이 타입을 올바른 순서로 전달해야 합니다. doSomething 함수에서 ChickenFace를 person 부분에 age에 76, isFunny에 false을 씁니다.
false 대신 숫자를 전달하면 TypeScript에서는 오류가 나거나 적어도 경고를 합니다. 숫자가 아니라 불리언을 입력해야 합니다. 너무 많거나 적은 인수를 전달하면 무언가를 빼먹으면 문제가 있다고 합니다. 세 개를 예측했는데 하나만 입력됐다고 구체적으로 알려줍니다.
age의 인수를 받지 않았다는 친절한 메시지를 줍니다. 여러 개의 파일을 작업할 때 아주 유용합니다. 함수 정의에 대해 지금 여기서 다루진 않습니다.
원하는 만큼 다양한 타입을 파라미터를 구성할 수 있습니다. JavaScript와 마찬가지로 함수를 호출할 때 정의하는 순서가 중요합니다. 맨 처음에 문자열이 오고 그 다음엔 숫자 그리고 불리언이 차례로 와야 합니다.
반응형
'SW > TypeScript' 카테고리의 다른 글
Flutter vs. React Native: 모바일 앱 개발자를 위한 딜레마 (0) | 2024.10.08 |
---|---|
useState() vs. useRef(): 리액트에서의 기술적 차이점 이해하기 (0) | 2024.09.12 |
TypeScript : 함수 파라미터 애노테이션 : 개념, 예제, 설명 (0) | 2023.04.08 |
TypeScript : 지연된 초기화 및 암묵적 Any : 개념, 예제, 설명 (0) | 2023.04.07 |
TypeScript : Any 타입 : 개념, 예제, 설명 (0) | 2023.04.06 |