| 123456789101112131415161718192021222324252627282930313233 |
- (function(){
- // function fn1(name:string):string{
- // return name;
- // }
- // 泛型:用字符去指代未知类型 具体使用时 在传值
- function fn1<T>(aa:T):T {
- return aa;
- }
- fn1(12);//传入参数时 ts会自动解析出所传入的类型
- fn1<string>("11");//传入参数时 指出类型 写在<>内
- // 传入多个值
- function fn2<T,X>(a:T,b:X):[T,X] {
- return [a,b];
- }
- fn2<number,string>(11,'哈哈');
- // 接口
- interface happy {
- jump:string
- }
- // 函数 泛型继承接口
- function fn3<T extends happy>(a:T):T{
- return a
- }
- fn3({jump:"就还好"});
- // 类 泛型继承接口
- class A<T extends happy>{
- name:T;
- constructor(name:T) {
- this.name = name;
- }
- }
- let a = new A({jump:'小猫'})
- })()
|