网站建设原则包括哪些内容,青海营销网站建设公司,wordpress论坛上传下载插件,建站cms本节课我们来开始了解 TypeScript 中泛型类型的概念和接口使用。 一#xff0e;泛型类型 1. 前面#xff0c;我们通过泛型变量的形式来存储调用方的类型从而进行检查#xff1b; 2. 而泛型也可以作为类型的方式存在#xff0c;理解这一点#xff0c;先了解下函数的… 本节课我们来开始了解 TypeScript 中泛型类型的概念和接口使用。 一泛型类型 1. 前面我们通过泛型变量的形式来存储调用方的类型从而进行检查 2. 而泛型也可以作为类型的方式存在理解这一点先了解下函数的声明方式 // 普通函数
function info(name : string, age : number) : string {
return name 的年龄为 age
}
// 匿名函数
let info function (name : string, age : number) : string {
return name 的年龄为 age
}
// 匿名函数 2
let info : (name : string, age : number) string function (name, age) {
return name 的年龄为 age
} PS 匿名函数 2 的声明方式中的“ ”箭头函数表示函数的返回类型 3. 那么用泛型来表示上面的匿名函数我们可以对照的样式来写 function infoT(msg : T) : T {
return msg
}
// 匿名函数形式的泛型类型
let myInfo : T(msg : T) T function (msg) {
return msg
} PS 变形到这里你会发现 : T ( msg : T ) 这个就是类型了即泛型类型 二接口 1. 泛型不但可以作为类型来使用还可以继续变形用对象字面量的形式存在 // 对象字面量形式的泛型类型
let myInfo2 : {T(msg : T) : T} function (msg) {
return msg
} PS 如果用 {} 对象字面量方式那么 箭头函数就改成冒号的对应语法即可 2. 继续变形泛型类型支持 {} 那么就可以使用接口方式进行分离有助于复用 // 将对象字面量形式用接口形式代替
interface Iinfo {
T(msg : T) : T
}
let myInfo : Iinfo function (msg) {
return msg
}
console.log(myInfostring(Mr.Lee))
PS当然还可以变形就是将string的类型参数通过 Iinfostring这样传递
interface IinfoT {
(msg : T) : T
}
let myInfo : Iinfostring function (msg) {
return msg
}
console.log(myInfo(Mr.Lee))