typescript interface 函数问题

interface SearchFunc {
    (source: string, subString: string): boolean;
}
let mySearch:SearchFunc;
mySearch = function(source: string, subString: string) {
}

  let counter = <SearchFunc>function (source:string,subString:string) { };
  

这两种写法区别吗??

阅读 3.4k
2 个回答

结果上真没什么区别。如果要硬谈不同的话,我可能只能看出:

  1. 例一通过声明变量mySearch的类型为SearchFunc来约束等号右边的待赋值函数的结构

  2. 例二通过范型强制转换等号右边的待赋值函数,使得Typescript编译器可以推导出变量counter的类型

别的我真扯不出来了,^^

第一种的知识点是接口,第二种的知识点是类型断言,找这两种知识点看一下就知道了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题