文章第一句话为“这是我参与「第五届青训营 」伴学笔记创作活动的第 4 天
1.什么是TypeScript?
1.JavaScript是动态类型的语言,只有在执行时才会进行类型匹配。
2.TypeScript 是静态类型的语言,无法直接在浏览器上运行,会被编译成 JavaScript 语法再去运行。
在编译过程暴露出大部分错误,并且增加了代码的可读性
3.两者都是弱类型语言。
TypeScript是JavaScript的超集,具有可选的类型并可以编译为纯JavaScript。从技术上讲TypeScript就是具有静态类型的 JavaScript 。
推荐使用VSCode(Visual Studio Code)编辑器
2.TypeScript基本语法
基础数据类型
相比于JS语句就是多了类型声明
对象类型
在TS中我们通常会使用interface关键字来声明数据类型,接口可以理解为一种规范,一种契约。可以约束一个对象里应该有哪些成员,这些成员都是怎么样的。
函数类型
函数重载
数组类型
补充类型
泛型
泛型就是在定义函数,接口或者类的时候没有指定具体类型,等到使用时才指定具体类型。
类型别名和类型断言
字符串、数字 字面量
3.高级类型
联合类型: IA | IB; 联合类型表示一个值可以是几种类型之一
交叉类型: IA & IB; 多种类型叠加到一起成为一种类型,它包含了所需的所有类型的特性
类型保护与类型守卫
改造前:
访问联合类型时,只能访问共有的属性和方法
改造后:
这里的!!其实就是取非后再取非,常常用来做非空判断。!!常常可以用于简化代码。