1.1 TypeScript是什么?
TypeScript(简称TS)是JavaScript的超集(JS有的TS都有)即TypeScript包含JavaScript.
TypeScript = Type + JavaScript
(在JS基础之上为TS添加了类型支持)。
// TypeScript 代码,有明确的类型。即:number (数值类型)
Let age: number = 18
// JavaScript 无明确的类型
let age: 18;
TypeScript是微软开发的开源编程语言,可以在任何运行JavaScript的地方运行TypeScript
1.2 TypeScript介绍
TypeScript为什么要为TS添加类型支持?
背景:JS的类型系统存在“先天缺陷”,JS代码中绝大部分错误都是类型错误(uncaught Type Error)。问题:增加了找bug,改bug的时间,严重影响开发效率。
从编程语言的动静来区分,TypeScript属于静态类型的编程语言,JS属于动态类型的编程语言。
静态类型:编译期做类型检查
动态类型:执行期做类型检查
代码编译和代码执行的顺序:1.编译,2.执行。
对于JS来说:需要等到代码真正去执行的时候才能发现错误(晚)
对于TS来说:在代码编译的时候(代码执行前)就可以发现错误(早)
并且,配合VSCODE等开发工具,TS可以提前在编写代码的同时就发现代码中错误,减少找bug,改bug时间。
1.3 TypeScript相比JavaScript的优势
1.更早(写代码的同时)发现错误,减少找Bug,改Bug时间,提升开发效率。
2.程序中任何位置的代码都有代码提示,随时随地的安全感,增加了开发体验。
3.强大的类型系统提升了代码的可维护性,使得重构代码更加容易。
4.支持最新的ECMAScript语法,优先体验最新的语法,让你走在前端技术的最前沿。
5.TS类型推断机制,不需要在代码中的每个地方都显示标注类型,让你在享受优势的同时,尽量降低了成本。
除此以外,vue3源码使用TS重写,Anglar默认支持TS,React与TS完美配合,TypeScript将成为大中型前端项目的首先编程语言。
2.TypeScript初体验
2.1 安装编译TS的工具包。
问题:为什么要安装编译TS的工具包?
回复:Node.js/浏览器,只认识JS代码,不认识TS代码,需要将TS代码转化为JS代码,然后才能运行。
安装命令:npm install -g typescript
typescript包:用来编译代码的包,提供 tsc 命令,实现了TS->JS的转化
验证是否安装成功:
# 即查看 TypeScript 的版本
tsc -v
C:\Users\lc\project\code>tsc -v
Version 5.1.3
以上返回代表安装成功
2.2 编译并运行TS代码
1.创建 hello.ts 文件(注意:TS文件的后缀名为.ts)
console.log('Hello TS')
2.将TS编译为JS:在终端中输入命令:
tsc hello.ts
(此时在同级目录中会出现一个同名的JS文件)
3.执行JS代码:在终端中输入命令:
node hello.js
说明:所有合法的JS代码都是TS代码,有JS基础只需要学习TS的类型即可
注意:由于TS编译生成的JS文件,代码中就没有类型信息了。
// TS中的代码如:
console.log('Hello TS server')
let age : number = 28
console.log(age)
编译后JS中代码为
console.log('Hello TS server');
var age = 28;
console.log(age);
2.3 简化运行TS步骤
问题描述:每次修改代码后,都要重复执行两个命令,才能运行TS代码,太繁琐。简化的方式:使用 ts-nade 包,直接(解释:ts-node 命令在内部偷偷的将TS->JS,然后运行TS代码)在 Node.js中执行TS代码:
安装命令:
npm install -g ts-node
ts-node包提供了ts-node命令。
使用方式:
使用如下命令:
ts-node hello.ts
PS C:\Users\lc\project\code> ts-node hello.ts
Hello TS server
28
备注:也可以安装插件 code runner 直接运行,今天就学到这里。明天继续。