慕课网站开发,企业服务平台上线,广告网站设计方案,如何学会建网站1. 类型声明 通过 :类型 明确指定变量的类型。示例#xff1a;let a: string; let b: number; let c: boolean; function demo(x: number, y: number): number { return x y; }2. 类型推断 TypeScript 会根据赋值自动推断变量类型。示例#xff1a;let d -99; // 推断为 …1. 类型声明通过:类型明确指定变量的类型。示例leta:string;letb:number;letc:boolean;functiondemo(x:number,y:number):number{returnxy;}2. 类型推断TypeScript 会根据赋值自动推断变量类型。示例letd-99;// 推断为 numberdfalse;// 报错3. 类型总览JavaScript 原始类型string、number、boolean、null、undefined、bigint、symbol、objectTypeScript 扩展类型void、never、unknown、any、enum、tuple自定义类型type、interface4. 常用类型4.1 字面量类型值只能是特定的字面量。示例leta:你好;letgender:男|女;4.2any任意类型放弃类型检查。显式与隐式leta:any;// 显式letb;// 隐式推断为 any4.3unknown类型安全的any赋值给其他类型需先断言或类型判断。示例leta:unknownhello;letx:string;xaasstring;// 断言4.4never表示永远不会有值。常用于函数返回值或类型推断中的不可能分支。示例functionerror(message:string):never{thrownewError(message);}4.5void表示空或undefined常用于无返回值的函数。示例functiondemo():void{console.log(no return);}4.6object表示非原始类型对象、数组、函数等。通常使用具体结构进行限制letperson:{name:string;age?:number};4.7tuple元组固定长度的数组各位置类型可不同。示例lett:[string,number];t[hello,123];4.8enum枚举定义一组具名常量。示例enumColor{Red,Blue,Black}letc:ColorColor.Red;5. 自定义类型使用type定义类型别名。示例typeStudent{name:string;age:number;grade:1|2|3;};6. 抽象类用abstract声明不能实例化只能被继承。可包含抽象方法和普通方法。示例abstractclassPerson{abstractspeak():void;walk(){console.log(walking...);}}7. 接口用interface定义可重复声明合并。可用于限制类结构或作为类型使用。与抽象类的区别接口只能有抽象成员类使用implements实现接口示例interfacePerson{name:string;speak():void;}8. 属性修饰符修饰符说明readonly只读不可修改public公开默认protected仅在类及子类中可访问private仅在类内部可访问9. 泛型用于在定义时不指定具体类型使用时再确定。可约束泛型范围。示例functionidentityT(arg:T):T{returnarg;}functiongetLengthTextends{length:number}(arg:T):number{returnarg.length;}本文涵盖类型系统、自定义类型、类与接口、泛型等核心概念适用于快速复习与查阅。