TypeScript类型(二)
对象
示例:
//#region js写法 // object表示一个js对象 let a: object; a = {}; a = function () { }; //#endregion //#region TypeScript写法 // {} 用来指定对象中可以包含哪些属性 // 语法:{属性名:属性值,属性名:属性值} // 在属性名后边加上?,表示属性是可选的,不常用 let b: {name: string, age?: number}; b = {name: '孙悟空', age: 18}; // [propName: string]: any 表示任意类型的属性 let c: {name: string, [propName: string]: any}; c = {name: '猪八戒', age: 18, gender: '男'}; let c1:{name:string,[xxx:string]:number}; // 报错,因为自定类型是number,所以不能adress是string c1={name:"ww",age:12,adress:"qq"}; //#endregion
函数结构的类型声明
/* * 设置函数结构的类型声明: * 语法:(形参:类型, 形参:类型 ...) => 返回值 * */ let d: (a: number ,b: number)=>number;// 返回值类型是number,并且参数是number d = function (n1: number, n2: number): number{ return 10; }
数组的类型声明
/* * 数组的类型声明: * 类型[] * Array<类型> * */ // string[] 表示字符串数组 数组中只有字符串 let e: string[]; e = ['a', 'b', 'c']; // number[] 表示数值数值 let f: number[]; // 同上,数值数组 let g: Array<number>; g = [1, 2, 3];
元组
元组就是固定长度的数组
/* * 元组,元组就是固定长度的数组 * 语法:[类型, 类型, 类型] * */ let h: [string, number]; h = ['hello', 123];
枚举
/* * enum 枚举 * * */ enum Gender{ Male, Female } let i: {name: string, gender: Gender}; i = { name: '孙悟空', gender: Gender.Male // 'male' }
类型的别名
// 比如说 let k=1 | 2 | 3 | 4 | 5; let l=1 | 2 | 3 | 4 | 5;
改进:
// 这样写很重复,所以可以做别名 type myType = 1 | 2 | 3 | 4 | 5; let k: myType; let l: myType; let m: myType;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
2021-11-24 jQuery自定义插件
2021-11-24 window.onload与 $(document).ready()区别