Skip to content
TypeScript

Function Overloads

Define function overload signatures.

By EZ4Code Team
overloadfunction

Code

function process(input: string): string;
function process(input: number): number;
function process(input: string | number): string | number {
  if (typeof input === "string") return input.toUpperCase();
  return input * 2;
}

const r1 = process("hello"); // string
const r2 = process(42);      // number

// Method overloads
class Calculator {
  add(a: number, b: number): number;
  add(a: string, b: string): string;
  add(a: any, b: any): any {
    return a + b;
  }
}

Explanation

Function overloads provide multiple call signatures, returning different types based on parameters.

More TypeScript Snippets