Docs
/
TypeScript
Chapter 6
06 — Functions & Overloads
Core Concepts
- Parameter types — must always be annotated
- Return types — inferred, but annotate public APIs
- Optional parameters —
param?: Type(always at the end) - Default parameters —
param: Type = defaultValue - Rest parameters —
...args: Type[] - Function overloads — multiple signatures, one implementation
- this parameter — explicit
thistyping in function signatures - Callable types —
type Fn = (x: number) => string - void vs undefined — void callbacks allow returning values; undefined doesn't
Overloads vs Union Returns
| Approach | When to Use |
|---|---|
| Overloads | Return type depends on input type |
| Union return | Return could be either type regardless of input |
| Generic | Same structure, different types |