泛型
- 应用场景:1、处理多种数据类型,2、当函数、接口或类在多个地方使用该数据类型时
- 分类:
 (1)泛型接口:
interface Identities<V,M> { value: V, message: M}
(2)泛型函数:
function Fn<V,M>(value: V, message: M): V {
                                              console.log(message);
                                              return value;
                            }
(3) 泛型类:
- 泛型约束:
- 确保属性存在
- 检查对象上的键是否存在
interface Length {
    length: number;
}
function identity<T extends Length>(arg: T): number {
       return T.length;
}
function getProperty<T, K extends keyof T>(obj: T, key: K) : T[k] {
      return obj[key];
}
约定俗成命名:
T(Type)、K(Key)、V(Value)、E(Element)
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号