什么是TS---typescript?
(TypeScript是Microsoft公司注册商标)
- TypeScript具有类型系统,且是JavaScript的超集, 它可以编译成普通的JavaScript代码。
- TypeScript支持任意浏览器,任意环境,任意系统并且是开源的。
- TypeScript 是 JavaScript 的超集,扩展了 JavaScript 的语法,因此现有的 JavaScript 代码可与 TypeScript 一起工作无需任何修改,
- TypeScript 通过类型注解提供编译时的静态类型检查。
- TypeScript 可处理已有的 JavaScript 代码,并只对其中的 TypeScript 代码进行编译。
Typescript是基于JavaScript实现的,它实现了对js的类型规范,让一些语义化的错误暴露出来,
例如,
// js中:
let a = 10;
a.length;// undefined
a = "数字";
// 正确
// ts中:
let b = 10; // let b:number = 10;
b.length;// 错误,length属性不存在
b = "数字";
// 错误,你不能给number类型赋值成string类型
js是弱类型语言,对于变量赋值,引用方面都比较宽松,比如可以将数字变量赋值成字符,使用为声明的属性(返回null或者undefined),都不会产生错误,但是在严格的开发环境下,这种不严谨的规则会留下很大的隐患,将这中类型的错误在编译时暴露出来可以减少很多隐性的错误产生,
而typescript能完美的解决这个问题,typescript是强类型的语言,它的语法规则是严格的,任何不合乎逻辑的引用赋值都会产生错误并暴露出来;在此基础上,有了严格的语义规则,typescript可以实现JavaScript一些没有的数据类型和结构(枚举,接口......),
所以,Typescript是基于JavaScript实现的强类型语言(所有的ts代码都可以转换成js代码),同时它实现了JavaScript原本没有结构功能(超集)
Typescript的安装和使用示例
安装
使用npm安装,推荐全局安装
npm install -g typescript
在项目中使用typescript
npm install typescript
npm install @types/node
npm install @tsconfig/node20
安装完之后,输入tsc -v成功显示版本号,就可以新建ts文件开始编写ts代码
使用示例
编写一个简单的ts代码
let str:string = "Hello, World!";
console.log(str);
使用tsc命令将ts代码转成js代码,然后再执行js代码,成功打印出了hello word
注意:不管是再命令行还是浏览器中,ts最终都是编译转成js代码再执行的
到这里就成功安装了typescript并成功运行了typescript,
扩展
Typescript的扩展运行
执行ts代码时每次都要转成js执行,这显然不是很方便,在node环境(命令行)下,可以使用ts-node直接执行ts代码
npm安装:
npm install ts-node -g
删除之前的index.js ,直接运行ts代码
ts-node xxx.ts
可以看到并没有新产生js文件,但成功打印了结果
tsc命令
tsc
// 编译目录下所有的ts文件转成js
tsc xxx.ts
// 编译指定ts文件转成js
tsc -w
// 实时编译目录下ts文件,保存后立即编译一次
tsc -init
// 当前目录下生成一个tsconfig.json配置文件