隐居以求其志,行义以达其道
TS函数重载
TS函数重载

TS函数重载

函数多个参数除了泛型外,可以使用重载进行关系约束,约束的是函数被调用时的传参。

TS的函数重载主要分为多个重载签名+实现签名+函数体。

函数体中还是要类型保护,甚至断言。

重载定义时,最后一个function(实现签名)不是重载(签名)列表中的一部分,其参数类型是重载列表中参数类型的联合类型(或any)。就是说实现签名只是在定义时起到了统领所有重载签名的作用,在执行调用时就看不到实现签名了。

重载列表匹配顺序是从上往下,最精确的列表应该放在最上面。