TypeScript的那些事

TypeScript

1.数据类型

复制代码
 1 1. number string boolean array 元组 枚举 null  undefined void never 
 2 TS规定一旦变量在初始时定义了变量类型,那么就不能修改。
 3 初始化str变量为string类型,就不能更改为number类型
 4 let str : string = "123456"
 5 
 6 数组类型:
 7 let arr : number[] = [1,2,3]
 8 let arr: Array<string> = ["1","2"]
 9 元组类型
10 // 是要求个数和类型保持一致
11 let user: [number, string] = [1,"2"]
复制代码
// 接口可以实现继承 extends 可以同时继承多个,用逗号隔开
// 类,可以继承 extends。父类又称为基类。子类被称为派生类。
// 类继承后,子类可以对父类的方法重新定义,这个过程称之为方法的重写
// 修饰符
// 公共 public:可以自由的访问类程序里定义的成员
// 私有 private:只能够在该类的内部进行访问,实例对象并不能访问,并且继承该类的子类并不能访问
// 受保护 protect:除了在该类的内部可以访问,还可以在子类中仍然可以访问,实例对象同样不能访问受保护的属性
// 只读属性readnly: 必须在声明或者构造函数中初始化
// 静态属性 static
// 抽象类,抽象类作为其他派生类的基类进行使用,并不是直接进行实例化 abstract

 

// 高级类型
// 交叉类型 & 本质是一种合并的操作
// 联合类型 | let ss: number | string;
// 类型别名 type 给一个类型起个新名字
// 类型索引 keyof 类似于 Object.keys ,用于获取一个接口中 Key 的联合类型
interface Button {
type: string
text: string
}
type ButtonKeys = keyof Button
// 等效于
type ButtonKeys = "type" | "text"
// 类型约束
type BaseType = string | number | boolean
// 这里表示 copy 的参数
// 只能是字符串、数字、布尔这几种基础类型
function copy<T extends BaseType>(arg: T): T {
return arg
}
// 映射类型 通过 in 关键字做类型的映射,遍历已有接口的 key 或者是遍历联合类型
type Readonly<T> = {
readonly [P in keyof T]: T[P];
};
interface Obj {
a: string
b: string
}
type ReadOnlyObj = Readonly<Obj>
// 条件类型

 

posted @   王依一  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示