以下两种写法有什么区别吗?推荐那种写法
来源:2-12 泛型(Generics) 第三部分 - 类和接口

ku咖啡不加糖
2020-03-26
方式1:
interface IPlus<T> {
(a:T, b:T,): T,
}
function concat(a: string, b: string): string {
return a + b
}
const b: IPlus<string> = concat
方式2:
interface IPlus<T> {
(a:T, b:T,): T,
}
function concat(a: string, b: string): string {
return a + b
}
const b = concat
最后一行的b后面加不加: IPlus<string>
感觉结果没区别呀,也都能检查类型。实际开发推荐加还是不加?
写回答
1回答
-
张轩
2020-03-27
同学你好 typescript 强大的一点就是类型推断 当你为一个变量赋值的时候 会根据情况自动推断被赋值的类型 https://www.typescriptlang.org/docs/handbook/type-inference.html 方式2 使用了类型推断,b 自动添加了类型,第一个例子是 只是为了证明 interface 可以描述函数类型。
实战中大多数情况是不用加的。
10
相似问题