Typescript系列(一):TS入门教程之简介、安装、编译、监听

一个比java更script的语言,它是js的超集,它是Typescript。

一、typescript是什么?

Typescript是javascript的一个超集,主要提供了类型系统和对ES6的支持。它由Microsoft开发,代码开源于github上。

  • 所谓超集是集合论的术语,A ⊇ B,则 A 集是 B 的超集,也就是说 B 的所有元素 A 里都有,但 A 里的元素 B 未必有。

二、为什么选择TS?

众所周知,javascript是一门弱类型语言。它允许隐式类型转换,允许改变变量的类型,在带来便利的同时,也产生了一些问题。这些问题在ts中得到了解决。

在我看来,类型就是最好的注释,而TS的类型检查刚好满足这一点,大大增加了代码的可读性以及可维护性。其次,ts的包容性很强,ts在编译成js的过程中,如果内部出现了错误,它是仍然可以继续编译成js,而且不影响运行。最后,ts拥有活跃的社区,最近vue3全面使用ts,会使ts的生态越来越好。所以,学习ts已经迫在眉睫了!


三、安装使用

  • 全局安装命令:cnpm install -g typescript
    在这里插入图片描述
  • 编译文件tsc hello.ts
  • 约定以.ts为文件后缀。编写react时,以.tsx结尾。

四、编译

  • 在一个文件夹中新建TS文件,写入:
console.log('hello world')
  • 编译ts,执行命令:
tsc hello.ts
  • 执行以后会发现文件夹下多出一个js文件,内容和ts文件中一样:

在这里插入图片描述
可以看到,前面的文件没有使用ts语法。接下来,我们在ts中声明一个变量。


四、ts语法编译

  • ts可以为变量指定类型,比如:
var blog:string = "oralinge"; // string 为设置变量类型

在这里插入图片描述

  • 我们执行tsc hello.ts进行编译,看一下js中的内容:

在这里插入图片描述
效果正常。

但是如果不按照指定的类型声明变量呢?
我们写入如下代码:

var num: Number = true;
  • 因为写入了错误的代码,此时vscode提示:

在这里插入图片描述

前面我们已经说过ts的包容性,内部语法错误是仍然可以编译成js的。

  • 编译时终端提示:

在这里插入图片描述

  • 尽管报错, js仍然编译成功

在这里插入图片描述


五、监听

  1. 执行初始化命令,创建package.json。
	npm init -y
  1. 打开package.json,增加脚本build执行tsc命令:
	"scripts": {
	    "build":"tsc"
	 }
  1. tsc命令会使用到tsconfig.json的配置,新建tsconfig.json,输入以下代码:
   {
	  "name": "ts",
	  "version": "1.0.0",
	  "description": "",
	  "main": "hello.js",
	  "scripts": {
	    "test": "echo \"Error: no test specified\" && exit 1",
	    "build": "tsc",
	    "start": "tsc --watch"
	  },
	  "keywords": [],
	  "author": "",
	  "license": "ISC"
	}

以上配置会将src目录下的ts编译到ts文件夹下。outDir设置输出目录。
输入命令:

cnpm run build

效果图:在这里插入图片描述
当然,监听的方式同上。执行命令:

 cnpm run start

保存后,就可以看到js中出现了编译后的代码了。
在这里插入图片描述


以上。

更多内容请查看: Typescript系列(二):TS入门教程之基础数据类型

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
TypeScript 提供了一个命令行工具 `tsc`,可以将 TypeScript 代码编译成 JavaScript 代码。如果你想在保存 TypeScript 文件时自动编译,可以使用以下两种方法。 ### 方法一:使用 `tsc` 的 `--watch` 选项 `tsc` 命令提供了 `--watch` 选项,可以监视指定的 TypeScript 文件,当文件发生变化时自动重新编译。你可以在命令行中输入以下命令: ``` tsc --watch your_file.ts ``` 这样,当你保存 `your_file.ts` 文件时,`tsc` 就会自动重新编译生成对应的 JavaScript 文件。 ### 方法二:使用 Node.js 的 `fs` 模块和 `child_process` 模块 如果你想要更加灵活的自动编译方式,可以使用 Node.js 的 `fs` 模块和 `child_process` 模块。你可以编写一个 Node.js 脚本,在文件保存时自动调用 `tsc` 命令进行编译。 以下是一个简单的示例代码: ```javascript const fs = require('fs'); const { exec } = require('child_process'); // 监听文件变化 fs.watch('./your_file.ts', (eventType, filename) => { if (eventType === 'change') { // 调用 tsc 命令进行编译 exec('tsc your_file.ts', (error, stdout, stderr) => { if (error) { console.error(`exec error: ${error}`); return; } console.log(`stdout: ${stdout}`); console.error(`stderr: ${stderr}`); }); } }); ``` 你可以将以上代码保存为一个 `watch.js` 文件,然后在命令行中运行 `node watch.js` 命令开始监听文件变化。当你保存 `your_file.ts` 文件时,Node.js 脚本就会自动调用 `tsc` 命令进行编译

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值