美文网首页
typescript-泛型

typescript-泛型

作者: 芗芗_ | 来源:发表于2019-05-07 15:54 被阅读0次

    泛型

    泛型,字面上看就是宽泛的类型约束。是指在定义函数、接口或类的时,不指定类型,在使用时指定类型(runtime)

    定义数组有两种方法:

    let arr1 : number[] = ['123']
    let arr2 : Array<number> = ['123']
    

    使返回值的类型与传入参数的类型是相同,我们使用了[类型变量],它是一种特殊的变量,只用于表示类型而不是值,它不同于使用 any,它不会丢失信息.它保持了数据的准确性,使得传入数值类型和返回的数值类型相同.

    泛型函数的类型与非泛型函数的类型没什么不同,只是有一个类型参数在最前面,像函数声明一样:

    // 单个类型变量
    function identity<T>(arg: T): T {
        return arg;
    }
    
    let myIdentity: <T>(arg: T) => T = identity;
    
    // 多个类型变量
    function info<S, N>(name: S, age: N): { name:S, age:N } {
        return { name, age };
    }
    console.log(info('pr', 18));  // {name: "pr", age: 18}
    
    
    

    相关文章

      网友评论

          本文标题:typescript-泛型

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