继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

TypeScript学习之泛型

慕姐8265434
关注TA
已关注
手记 1309
粉丝 222
获赞 1065

一、基本使用

function show<T>(arg: T):T{    return arg;
}
let out = show<string>('xxxx');
let out = show('xxxx');//利用了类型推论//泛型变量function show<T>(arg: T[]):T{
    console.log(arg.length);    return arg;
}function show<T>(arg: Array<T>):Array<T>{
    console.log(arg.length);    return arg;
}//泛型类型function show<T>(arg: T):T{  return arg;
}
let myShow: <T>(arg: T) => T = show;//使用不同的泛型参数名let myShow: <U>(arg: U) => U = show;//使用带有调用签名的对象字面量let myShow: {<T>(arg:T) :T} = show;//泛型类class Person<T>{
  value:T;
}
let p = new Person<number>;

二、泛型约束

interface Lengthwise {
  length: number;
}function show<T extends Lengthwise>(arg: T):T{
  console.log(arg.length);  return arg;
}//在泛型约束中使用类型参数function  getProperty (obj: T, key: K){    return obj[key];
}
let x = {a:1,b2};
getProperty(x,"a");//在泛型里使用类类型function create<T>(c: {new(): T; }): T {  return new c();
}



作者:大富_大贵
链接:https://www.jianshu.com/p/cb24259e25f5


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP