| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 스프링
- 자바
- SQL
- 오라클
- 정리
- 쿼리
- JavaScript
- 프로그래머스
- jpa
- Next.js
- MySQL
- 코드테스트
- java
- 백엔드
- 스프링부트
- 데이터베이스
- web
- 서버
- 자바스크립트
- jsp
- 코드 테스트
- 디자인 패턴
- 프론트엔드
- 알고리즘
- spring
- oracle
- 미니정리
- BACK-END
- node.js
- 프런트엔드
- Today
- Total
참치코더의 꿈 메모장
TypeScript / 함수 타입 정리 본문

함수 타입
TypeScript에서 함수 타입은 함수가 입력으로 받는 매개변수와 반환값의 타입을 명시하는 것이다.
ex)
function add(a: number, b: number): number{
return a + b;
}
함수 타입 선언 방법
1. 함수 선언 시 타입 명시
function greet(name: string): string {
return `Hello, ${name}`;
}
- 매개변수 타입과 반환값 타입을 바로 함수에 붙인다.
2. 변수에 함수 타입 지정
let add: (x: number, y: number) => number;
add = (a, b) => a + b;
- 변수에 이 타입을 지정하면, 타입에 맞는 함수만 할당 가능하다.
- JS의 콜백 함수 타입을 지정할 때 유용하다.
3. 선택적 매개변수 (?)
function log(message: string, level?: string){
console.log(`[${level || "INFO"}] ${message}`);
}
log("Hello"); // 가능하다
log("Hello", "WARN"); // 가능하다.
- level? : string
매개변수를 선택적으로 받기 때문에 함수를 사용할때 선택적으로 매개변수를 사용할수 있게 된다.
4. 나머지 매개변수 (Rest Parameter)
function sum(...valuse: number[ ]): number {
let sum = 0;
values.forEach((value) => sum + value);
return sum;
}
sum(1,2,3,4);
5. 함수 타입 별칭 (Type Alias)
type BinaryOperation = (a: number, b: number) => number;
const multiply: BinaryOperation = (x, y) => x * y;
const divide: BinaryOperation = (x, y) => x / y;
- type으로 만들어 두면 재사용이 가능하다.
- 복잡한 콜백 함수 타입 정의 시 유용하다.
6. 반환타입 void / never
function logMessage(msg: string): void{
console.log(msg);
}
- 반환값이 없는 함수일때 사용한다,
function throwError(message: string): never {
throw new Error(message);
}
- 함수가 절대 정상 종료하지 않는 경우 사용한다.
'TypeScript' 카테고리의 다른 글
| TypeScript / 서로소 유니언 미니 정리 (0) | 2025.11.29 |
|---|---|
| TypeScript / 타입 좁히기(Type Narrowing) 정리 (0) | 2025.11.27 |
| TypeScript / 타입 단언 정리 (0) | 2025.11.27 |
| TypeScript / 대수 타입, 타입 추론 정리 (0) | 2025.11.25 |
| TypeScript / 기본 타입 호환성, 객체 타입 호환성 정리 (0) | 2025.11.24 |