TypeScript入门 | 青训营笔记

97 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的的第5天

今天学习了TypeScript,下面是我对本次课程的总结.

一、本堂课重点内容:

  • TypeScript和JavaScript的区别
  • TypeScript的基本类型

二、详细知识点介绍:

2.1 为什么什么是TypeScript?

2.1.1 JS和TS本质区别:

JS是动态类型的弱类型语言;

TS是静态类型的弱类型语言。

2.1.2 静态类型和JS的超集

静态类型可读性增强:基于语法解析TSDoc,ide增强; 可维护性增强:在编译阶段暴露大部分错误。适用于多人合作的大型项目中,获得更好的稳定性和开发效率. JS的超集包含于建嵘所有JS特性,支持共存, 支持渐进式引入与升级

2.2 基础语法

基础数据类型:string、number、boolean、array 、object、null、undefined、enmu、void、never、any、tuple

注意:typescript和javascript中无int,float等数据类型的定义,全部统一用number来定义

Boolean 布尔类型

布尔类型只有true和false两个值。

var male:boolean=true;

Number数字类型

TS所有的数字都是由浮点数表示的,这些数字的类型就是number。

var age:number=22;

String 字符串类型

string表示文本数据类型。 和JavaScript一样,可以使用双引号或单引号表示字符串。

var name:string = "张三";

枚举类型

枚举类型是一组可以命名数值的集合。使用枚举类型可以为一组数值赋予的名字。

enum name {zsy,rh,zzz};
let n:name=name.zsy;
console.log(n)

还有对象类型、函数类型、函数重载、数组类型、TypeScript补充类型、TypeScript泛型、类型别名&类型断言、字符串/数字 字面量。

2.3 高级类型

联合/交叉类型
(1)联合类型:IA|IB;联合类型表示一个值可以是几种类型之一
(2)交叉类型:IA&IB;多种类型叠加到一起成为一种类型,它包含了所需的所有类型的特性。声明的类型并不确定,可以为多个类型中的一个
类型保护与类型守卫:类型保护是可执行运行时检查的一种表达式,用于确保该类型在一定的范围内。类型保护可以保证一个字符串是一个字符串.
函数返回值类型:其返回promise,结果为入参函数的返回结果