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声明或对象方法。