初识TypeScript

本文深入介绍TypeScript的基础概念,包括其与JavaScript的关系、优势、安装与使用方法。涵盖原始数据类型、任意值、类型推论、联合类型、接口、数组、函数、类型断言等核心概念,以及声明文件、类型别名、枚举、类修饰符和泛型的高级应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

标题初识TypeScript#

一、 什么是typescript?
TS(编译型)出现主要是为了弥补JS(解释型)弱类型特性
二、 为什么用typescript?
TS可维护和可读性强
即使语法出错TS也能编译成js
TS具有很好的发展前景(Angular2)
三、 怎么使用typescript?
安装使用
全局安装命令:npm install –g typescript
编译文件命令 tsc hello.ts

四、 TypeScript原始数据类型
有string number Boolean null undefined enum symbol
空值一般采用void来表示void可表示变量也可表示函数返回值
在这里插入图片描述

五、 TypeScript中的任意值
任意值(Any)用来表示允许赋值为任意型
声明一个变量为任意值之后,对它的的任何操作,返回的内容的类型都是任意值
如果变量在声明的时候,未指定其类型,那么它会被识别为任意值类型
在这里插入图片描述
六、 TypeScript中的类型推论
Ts会依照类型推论的规则推断出一个类型
如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成any类型而完全不被类型检查
例如 var b=1;
b=”1”将会报错 因为刚赋值初始化时 系统默认b为number类型 而你再次指定别的类型的时候将报错

七、 TypeScript中的联合类型
联合类型表示取值可以为多种类型中的一种
在这里插入图片描述
如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成any类型而完全不被类型检查
只能访问此联合类型的所有类型里共有的属性或者方法
在这里插入图片描述

八、 TypeScript中的对象类型—接口
可描述类的一部分抽象行为,也可描述对象的结构形状
接口一般首字母大写。有点编程语言会建议接口的名称加上I 前缀
赋值的时候,变量的类型和接口中的变量类型保持一致
在这里插入图片描述

接口中可定义可选(可疑)属性 只读属性 任意属性
在这里插入图片描述
在这里插入图片描述
无法分配给“age”,因为它是只读属性
在这里插入图片描述
九、 TypeScript中的数组类型
可采用类型+方括号表示
在这里插入图片描述
可采用数组泛型Array表示法
在这里插入图片描述
可采用接口表示法
在这里插入图片描述

十、 TypeScript中的函数类型
函数约束 有函数本身的参数约束 返回值约束
在这里插入图片描述
还有函数本身赋值的变量的约束
在这里插入图片描述
可采用重载的方式才支持联合类型的函数关系
在这里插入图片描述

十一、 TypeScript中的类型断言
类型断言(type asserttion)可以用来手动指定一个值得类型
语法(<类型>值)或者(值 as 类型)
在react中的jsx语法 只能使用后者
类型断言不是类型转换,断言成一个联合类型中不存在的类型是不允许的
使用范围:当使用联合类型的时候,联合类型中只能访问共有的方法或属性,但是在不确定类型的情况下需要访问其属性,但是ts语法不允许,这时就可以使用类型断言
在这里插入图片描述

十二、 TypeScript中的声明文件
当使用第三方库时,我们需要引用它的声明文件
通常我们会把类型声明放到一个单独的文件中
用 三斜线指令 表示引用了声明文件
///
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

十三、 TypeScript中的类型别名
类型别名用来给一个类型起个新名字
采用关键字type 例如type Name=string|number 例子中的Name就表示可设置字符串和数字类型
在这里插入图片描述
也可采用type来约束取值只能是某些字符串中的一个 如 type getSex=’男’|’女’;
在这里插入图片描述

十四、 TypeScript中的枚举
枚举(enum)类型用于取值被限定在一定范围内的场景
采用关键字enum定义 例如enum Days{Sun,Mon,Tue,Wed,Thu,Fri,Sat}
枚举成员会被赋值为从0开始递增的数字,同时也会对枚举值到枚举名进行反向映射
在这里插入图片描述

十五、 TypeScript中的类的修饰符
Public private 和protected
Public 修饰的属性或方法是公有的,可以在任何地方被访问到,默认所以的属性和方法都是public
Private修饰的属性或方法是私有的,不能在声明它的类的外部访问
Protected修饰的属性或方法是受保护的,它和private类似
在这里插入图片描述
十六、 TypeScript中的泛型
泛型(generics)是指在定义函数、接口或者类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值