|
@@ -0,0 +1,33 @@
|
|
|
|
+(function(){
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ function fn1<T>(aa:T):T {
|
|
|
|
+ return aa;
|
|
|
|
+ }
|
|
|
|
+ fn1(12);
|
|
|
|
+ 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:'小猫'})
|
|
|
|
+})()
|