interface SearchFunc {
(source: string, subString: string): boolean;
}
我经常这样声明一个函数
type Search = (source:string,subString:string)=>void
为什么类型脚本可以使用接口来声明函数?这是什么目的? 非常感谢
interface SearchFunc {
(source: string, subString: string): boolean;
}
我经常这样声明一个函数
type Search = (source:string,subString:string)=>void
为什么类型脚本可以使用接口来声明函数?这是什么目的? 非常感谢
在TypeScrip中,接口和类型都可以用来描述复杂类型,包括函数类型.然而,它们有一些不同之处和用例,可能使它们在某些场景中比另一个更适合.
TypeScript中的接口定义了一个对象必须遵守的合约.它们非常适合描述对象的形状,也可以描述函数类型.当你使用接口定义一个函数时,你实际上是定义了一个函数签名,任何函数(声称实现这个接口)都必须遵守这个签名.这很有用,例如,当您想要确保作为回调传递的函数或存储在对象中的函数遵循特定的.
总之,是否使用接口或类型别名在TypeScrip中声明函数类型取决于您的特定需要.如果您希望利用类实现和声明合并等功能,则可能需要使用接口.但是,如果您需要更灵活地表示各种类型,则类型别名可能是更好的 Select .