这是我参与「第四届青训营 」笔记创作活动的的第9天,今天是关于《TypeScript》的学习
TypeScript是什么?
以Javascript为基础构建的语言
一个Javasript的超集
可以在任何支持Javascript的平台中执行
TYpeScript扩展了JavaScript并添加了类型
TypeScript不能被JS解析器直接执行,需要编译
TypeSCript增加了什么?
- 类型
- 支持ES的新特性
- 添加ES不具备的新特性
- 丰富的配置选项
- 强大的开发工具
JavaScript类型
JavaScript 数据类型 值类型:string number boolean null undefined symbol 对象类型:object array function 还有两个特殊的:regexp date
TypeScript类型声明
类型声明不仅仅用于变量身上,在函数的参数以及返回值上也能进行使用。
TypeScript类型
let b:'male'|"female";
b = 'male'
b = "female"
let c:string| number;
c = '11'
c = 11
//any表示的是任意类型,一个变量设置类型是any相当于对该变量关闭了ts的类型检测。
let d:any; // let d; 隐式any
d = 10;
d = "hello"
d = true
let e:unknown; //未知 实际上就是类型安全的any
let s:string;
s = d; //d的类型是any,它可以赋值给任意变量不会报错
//但是unknown不能赋值给string 会提示
// Type 'unknown' is not assignable to type 'string'
类型断言
可以用来告诉解析器变量的实际类型
s = e as string; s = e;
类型保护与类型守卫
高级类型
小结
剩下的听的一知半解,在去查阅查阅资料争取弄明白。