我刚刚开始学习 Typescript,有一点我不明白。 有什么区别:
(声明变量的类型)
function func1 (arg: any): any {
return arg
}
let var1: string = func1(“Hello”)
和
(使用泛型)
function func2 <T>(arg: T): T {
return arg
}
let var2 = func2<string>(“Hello”)
我曾尝试搜索类似的引文,但没有成功。
答案 0 :(得分:0)
在带有泛型的第二个示例中,如果在编译时已知该类型,则会保留该类型。
例如:
let x = 27; // x is a number
let y = func2(x); // y is inferred to be a number at compile time
any
告诉 TypeScript 编译器可以从 func
传递或返回任何内容 - 它们不必匹配。