TypeScript支持重载字符串参数,以便在使用某些参数调用时可以正确键入返回any的方法。
这是在规范中定义的两个地方:
然而,要让这些东西正常工作是很困难的。下面是一个具有泛型get的示例类。当您将字符串"a"或"b"传递给此函数时,我希望提供特定类型,并且在所有其他情况下,返回类型为be any。
我包括两个专门的签名,然后提供一个通用签名,然后提供实现,其中有通用签名。下面的代码正确地报告了前两个分配给x和y的错误,但是如果我删除了一般签名(get(name: string): any),我就会得到错误:Argument of type '&