白狗子的博客

「天上浮云如白衣,斯须改变如苍狗。」——杜甫

TypeScript-面试-函数与重载

2026年10月16日·Admin·1 次浏览

面试题:函数类型怎么写?函数重载如何实现?

函数类型

type Fn = (a: number, b: string) => boolean

可选参数 ?、默认参数、剩余参数 ...args 与 JS 一致。

重载(overload)

多个声明签名 + 一个实现签名(实现需兼容所有声明):

function parse(x: string): object
function parse(x: object): string
function parse(x: string | object): object | string {
  // ...
}

调用时按传入实参匹配对外签名。

注意

  • 重载复杂时维护成本高,可用联合参数 + 类型守卫或泛型替代。
  • 箭头函数不便写重载,常用 function 声明或对象方法。

© 2025 My Blog. Built with Nuxt.js v4