【TS】初识 TypeScript

TS 初体验

  1. 下载、安装 Node
  2. 全局安装 typescript 依赖包:npm i typescript -g
  3. 创建、编写 .ts 文件(TS 支持 JS 语法,所以可以在 .ts 文件里面写 JS 代码)

编译 TS 文件

  1. 执行 tsc ./XXX.ts 编译 .ts 文件。编译成功后,即能生成对应的 .js 文件
  • 如果同时打开 TS 文件及其编译出来的 JS 文件,会抛出 “同名变量冲突” 的错误。原因:在 Node 环境中,如果文件没有使用模块化相关的代码,则该文件下的代码都在全局作用域下,同一作用域下当然也就不能存在相同的变量名啦~ 此时可执行 tsc --init 初始化 TS 配置文件 tsconfig.json,创建该文件后就不会再飘红啦~
  • 可以使用 tsc ./XXX.ts -w 编译并监听 TS 文件。此时,如果 TS 文件有改动,编译器会自动重新编译。

(自动) 编译多个 TS 文件

  1. tsc --init 初始化 TS 配置文件 tsconfig.json
  2. 直接执行 tsc 即可编译当前目录下所有的 TS 文件
  • 可以使用 tsc -w 编译并监听当前目录下所有的 TS 文件

执行 TS 代码

  1. npm i ts-node -g
  2. ts-node ./XXX.ts

如果需要 ts-node 识别 tsconfig.json,需要执行 ts-node ./XXX.ts --files

如果 tsconfig.json 配置了路径别名 "paths": { "@/*": ["./*"] },为使路径别名可用:
需要安装 tsconfig-paths 依赖包并执行 ts-node -r tsconfig-paths/register ./XXX.ts --files

nodemon 的使用

  1. npm i nodemon -g
  2. nodemon --exec ts-node ./XXX.ts:此时 nodemon 会监听 XXX.ts 的变更,如果有更新则重新执行该文件

使用 nodemon 时可能会报错,解决方法:以管理员身份运行 powerShell,执行 set-ExecutionPolicy RemoteSigned 即可



使用 TS 约束类型

约束变量

TS 可以约束【变量】的类型:

let num: number; // 显式约束类型: 先声明、后赋值
let str = "superman"; // 隐式约束类型: 声明、并赋值 (TS 会自动识别类型, 并对变量进行约束)

以上 2 种写法,都会约束【变量】的类型。如果变量值的类型不对,会直接飘红

  • 有 3 种情况,变量的类型会被推断为 any
let a;
let b = undefined;
let c = null;

约束函数

TS 可以约束【函数参数】&【函数返回值】的类型:

function sum(num1: number, num2: number): number {
    return num1 + num2;
}
let result = sum(100, 200); // 此时变量 result 的类型会被隐式约束为 number
  • 如果不指定【函数参数】的类型,则为 any
  • 如果不指定【函数返回值】的类型,TS 会根据 return 语句自动识别类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JS.Huang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值