TypeScript 泛型

作者: 楼上那位 | 来源:发表于2017-05-02 11:05 被阅读226次

    泛型函数

    function identify<T>(arg:T): T {
     return arg;
    }
    

    使用

    let output = identify<string>("myString");
    let op = identify("mystring");// 让编译器推断类型
    

    数组

    function logging<T>(arg:T[ ]) :T [ ]{
    ...
    }
    
    function loging2<T> (arg:Array<T>):Array<T> {
    ...
    }
    

    class GenericNUmber<T>{
     zearoV:T;
    add:(x:T,y:T)=>T;
    }
    
    

    泛型约束

    function copyFields<T extends U, U>(target: T, source: U): T {
        for (let id in source) {
            target[id] = source[id];
        }
        return target;
    }
    
    let x = { a: 1, b: 2, c: 3, d: 4 };
    
    getProperty(x, "a"); // okay
    getProperty(x, "m"); // error: Argument of type 'm' isn't assignable to 'a' | 'b' | 'c' | 'd'.
    

    相关文章

      网友评论

        本文标题:TypeScript 泛型

        本文链接:https://www.haomeiwen.com/subject/hglctxtx.html