ts文件介绍
ts文件即TypeScript文件。
TypeScript(简称:TS)是JavaScript的超集(JS有的TS都有)。
TypeScript = Type +JavaScript(在JS基础之上,为JS添加了类型支持)。
TypeScript是微软开发的开源编程语言,可以在任何运行JavaScript的地方运行。
TypeScript为什么要为JS添加类型支持?
背景: JS的类型系统存在”先天缺陷“,JS代码中绝大部分错误都是类型错误(Uncaught TypeError)。
问题: 增加了找Bug、改Bug的时间,严重影响开发效率。
从编程语言的动静来区分,TypeScript属于静态类型的变成语言,JS属于动态类型的变成语言。
静态类型: 编译器做类型检查。动态类型: 执行期做类型检查。 代码的执行顺序,先编译,后执行。
对于JS来说,需要等到代码真正去执行的时候才能发现错误(晚)
对于TS来说,在代码编译的时候,(代码执行前)就可以发现错误(早)
并且,配合VSCode等开发工具,TS可以提前到编写代码的同时就发现代码中的错误,,减少Bug,改Bug的时间。
那么TypeScript相比于JS的优势?
- 更早(编写代码的同时)发现错误,减少找Bug,改Bug时间,提升了开发效率。
- 程序中任何位置的代码都有代码提示,随时随地的安全感,增强了开发体验。
- 强大的类型支持提升了代码的可维护性,使得重构代码更加容易。
- 支持最新的ECMAScript语法,优先体验最新的语法,让你走在前端技术的最前沿。
- TS类型推断机制,不需要在代码中的每个地方都显示标注类型,让你在享受优势的同时,尽量降低了成本。
除此之外,Vue3源码使用TS重写,Angular默认支持TS、React与TS完美配合,TypeScript已经成为大中型前端项目的首选编程语言。
TypeScript 初体验
安装编译TS的工具包
问题: 为什么需要安装编译TS的工具包?
回答:Node.js/浏览器,只认识JS代码,不认识TS代码。需要先将TS代码转换为JS代码,然后才能运行。
TS编译工具是一个全局包,安装指令:npm install -g typescript.
typescript包: 用来编译TS代码的包,提供了tsc命令,实现了TS->JS的转化。
验证是否安装成功: tsc -v查看TypeScript的版本
TS转换JS的过程:
编译并运行TS代码
创建hello.ts(注意:TS文件的后缀名为.ts)
将TS编译为JS: 在终端中输入命令, tsc hello.ts(此时,在同级目录中会出现一个同名的JS文件)
执行JS代码: 在终端输入命令: node hello.js
说明: 所有合法的JS代码都是TS代码, 有JS基础只需要学习JS的类型即可。
注意: 由TS编译生成的JS文件,代码中就没有类型信息了
按照上面的步骤, 当我们每次修改代码之后,都需要重复执行两个命令,才能运行TS代码,太繁琐。
所以为了简化这个过程:我们可以安装ts-node包, 直接在Node.js中执行TS代码。
安装命令:npm install -g ts-node ,使用方式: ts-node hello.ts
ts-node命令在内部偷偷的将TS->JS然后,在运行JS代码
node-red中是通过lib\node_modules\node-red\node_modules\tslib包来完成ts到js的格式转换的。