这是我参与「第五届青训营 」伴学笔记创作活动的第4天。
概述
本节课程主要分为四个方面:
- Typescript 见解
- Typescript 基础语法,包括类型、泛型、类型别名、类型字面量等
- Typescript 高级类型讲解及实例
- Typescript 工程应用介绍
课前
学习 javascript 基础语法
developer.mozilla.org/en-US/docs/…
- 【可选】安装 typescript 开发工具
- 推荐 vscode , 链接:code.visualstudio.com/
- 体验在线编辑器
课后
- 学习官网更详细说明:www.typescriptlang.org/docs/
- 复习相关特性:www.tslang.cn/docs/home.h…
- 尝试改造项目进行实践: Todo List
什么是TS?
TypeScript 是 JavaScript 的语法超集,它添加了静态类型
声明一个变量
- 和JS相似,不过TS有类型限定,在声明变量的时候,加一个“:”和该变量的类型即可完成声明
- 也可以同时声明和赋值
- 可以直接赋值,编译器会根据类型判断
TS中的类型
- 有字面量,“|”表示可以选择其中一种类型
- as 表示断言,告诉编译器该变量的实际类型
- ?表示类型可选,[propName:string]:any 表示任意多个属性
- enum表示枚举,可以定义枚举类,使用里面字面量
- &表示同时,也就是说要有以上两个属性
TS中的类
- 可以定义属性、静态属性、只读属性
- 可以定义静态方法供类直接调用
构造函数
关键字constructor表示构造函数,可以传入参数,#表示私有属性,不可以被外界访问
继承
- 子类可以继承父类的所有东西,除了私有属性,私有属性是只能父类内部范围访问,子类是访问不到的
- 子类还可以重写父类的方法
- 在原有属性的基础上添加新的属性
抽象类
……
总结
通过这几节课的学习,感受到了JS与TS不同,TS是静态编译,而JS是动态编译。TS有了类型规范,使得变量不能那么随意更改类型,TS在JS上有很大的改进。TS 能强化了「面向接口编程」这一理念,在维护大项目中有更多优势。