首页 > 其他分享 ># 1. TypeScript 简介

# 1. TypeScript 简介

时间:2023-12-25 15:01:02浏览次数:40  
标签:文件 TypeScript 简介 代码 JS 编译 js 我们

1. TypeScript 简介

教程地址

教程资源:https://ts.xcatliu.com/introduction/what-is-typescript.html#link-1
中文官网:https://www.typescriptlang.org/

TypeScript 特点

  • JS的超集
    • 包含JS的所有元素
    • 能够运行 JS 代码
    • 支持 ES 语法
    • 是一种开源、跨平台的编程语言
  • 编译器编译为 JS 代码,JS 解析器执行
  • 完全兼容 JS 代码
  • 静态检查器
    • 静态类型,更加严格的语法
    • 减少运行时异常出现的概率
    • 方便后期维护

安装

TypeScript 安装步骤很简单,只需要下面这个简单的命令全局安装一下即可:

npm install -g typescript

执行完后,只需要等待安装完成。

在这里插入图片描述

安装完成后,可以通过下面命令检测一下是否安装成功:

tsc -V

在这里插入图片描述

如果出现版本号信息,则说明安装成功了。

编写 TS 代码

创建一个 TS 文件。

在这里插入图片描述

后缀是 ts 不是 js 了。

注意,TS 不是 JS,但是可以包含任何的 JS 代码的。 首先编写一个代码:

(() => {
  function sayHi(str: String) {
    return "你好," + str;
  }
})()

上面代码是一个自函数,自己直接调用,里面有一个方法 sayHi,传递了一个参数 str ,后面跟了一个 : String,意思是,这个 str 参数,规定了必须是 String 类型。

接下来,我们调用一下这个方法:

(() => {
  function sayHi(str: String) {
    return "你好," + str;
  }
  sayHi()
})()

看下面截图,报错了,实时的哟,告诉我们需要传递一个参数进来:

在这里插入图片描述
那我们传递一个 123 数字进去。

在这里插入图片描述
发现也是报错的,因为他说不能把数字类型赋值给字符串类型,因为我们在最开始传参的时候,规定了参数必须是字符串类型。所以换一下试试。

在这里插入图片描述
好的,不报错了。所以,TS 对我们的字符串类型进行了简单的校验,方便我们在开发过程中更快的纠错,防止开发错误。

编译

好的,上面我们 TS 代码已经编写好了,我们需要执行一下,但是这是 TS 代码,不能直接运行,我们需要首先把我们编译的代码编译成 JS 代码。

编译有两种方法,一种是手动编译,一种是 vscode 自动编译

手动编译

因为浏览器只认识 js 代码,所以我们需要把 ts 代码编译成 js 代码。

我们通过下面的命令执行这个操作:

tsc 文件名

我们在终端执行这个命令:

在这里插入图片描述
执行后可能稍微需要等下,等他编译完成。

在这里插入图片描述
编译完成我们可以看到哈,出现了一个同名的 js 文件,这个文件点进去看一下,就会发现,是我们 ts 文件编译后的 js 文件了。

在这里插入图片描述

好的,编译完成之后,我们就可以创建一个 html 文件之后引入使用了,就和之前的用法一样就可以了。

vscode 自动编译

上面手动编译是可以实现将 ts 代码转为 js 代码的,但是开发过程中总归是比较麻烦的,因为有一点修改,都需要我们自己重新在编译一边才可以看到效果,所以现在说一下vscode 自动编译。

如果想实现自动编译,我们需要通过一个命令生成一个配置文件:

tsc --init

终端执行这个命令:

在这里插入图片描述

稍微等一下,让他生成配置文件。

在这里插入图片描述
生成之后发现在目录又多了一个 json 配置文件。

生成这个文件怎么使用呢?我们点进去很多配置,先不用管,我们先改两个地方:

在这里插入图片描述

首先是 outDir ,表示 ts 文件最终编译为 js 文件的存放路径,我们解开注释,然后修改一下:

在这里插入图片描述
让他保存在当前路径的 js 文件夹下,统一放在一起。当然在当前文件夹下要创建一个 js 文件哈。

在这里插入图片描述
第二一个地方,继续往下找一个严格模式,先把他关了。

在这里插入图片描述

暂时关闭,学习嘛,暂时关了。

修改保存完成,我们可以回到 ts 文件去,设置 vscode 自动编译。

然后步骤是: 点击“终端”, 点击“运行任务”,点击“显示所有任务”,点击“tsc:监视 - tsconfig.json”

在这里插入图片描述
这样之后,他就会监听我们文件的变化,然后编译成 js 文件,执行完成之后其实我们 js 文件夹 下已经编译好一个 js 文件了。

在这里插入图片描述

这样配置之后,我们后期修改了文件内容并且保存后,不需要在手动编辑,vscode 会自动帮助我们实时的实现编译操作。

总结

在这里插入图片描述

标签:文件,TypeScript,简介,代码,JS,编译,js,我们
From: https://www.cnblogs.com/wjw1014/p/17926113.html

相关文章

  • Typescript中的never类型
    在TypeScript中,never类型表示那些永远不会发生的类型。它通常用来表示以下情况:函数的返回类型:如果一个函数永远不会返回(例如抛出异常或进入无限循环),可以将其返回类型标注为never。functionthrowError(message:string):never{thrownewError(message);}function......
  • Typescript中的类型断言
    类型断言(TypeAssertion)是TypeScript中的一种语法,用于手动指定一个值的类型。它类似于其他语言中的类型转换,但是在TypeScript中,类型断言并不会改变变量的底层类型。在使用类型断言时,需要使用尖括号或者as关键字来指定目标类型。例如:constvalue:any='helloworld';con......
  • MySQL导入导出 —— mysqldump 简介及常见用法
    一、导出导出用户需要有导出对象的权限,例如导出表要有select权限、导出视图要有showview权限、导出触发器要有trigger权限、需要锁表时要有locktables权限等。如果dump文件中包含了GTID信息,则无法导入到未启用GTID的数据库(低于5.6.9版本的数据库不支持GTID,因此也无法导入到这......
  • 1.Moose简介及安装
    Moose驼鹿1.简介MOOSE是美国爱达荷国家实验室主导开发的一个开源多物理面向对象有限元模拟工具。它提供了高级接口,让用户能够更为简易地使用成熟的非线性求解器。其特性包括但不限于:全耦合,全隐式多物理求解器多维度物理模拟自动并行化模块式开发以提高代码复用率内置适应......
  • redis简介,基本操作
    reids简介 redis官网:https://redis.ioredis中文网:https://www.redis.net.cn  端口号默认6379退出:exit,ctrl+credis-server.exeredis.windows.confredis-cli.exe连接其他地方的redis,指定端口,位置redis-cli.exe-hlocalhost-p6379keys*  //查看......
  • Typescript 类型基础操作
    Typescript类型基础Typescript的类型系统非常强大,它可以让你通过类型操作符基于现有的类型创建出新的类型。在面对复杂的类型需求的时候,可以通过下面的常见类型操作使类型创建更加简单、代码更加容易维护。1、泛型泛型主要是为了解决类型复用的问题。可以说泛型给了你在使用......
  • Typescript 函数详解
    前言虽然JS/TS支持面向对象编程,但大部分时候还是在写函数。函数是一等公民。本文介绍下如何在TypeScript中使用函数,包括:函数类型声明函数参数类型:可选参数、默认参数、剩余参数函数返回值类型this类型函数重载函数类型面试中经常会被问到,JS中有哪几种数据类型。其中就会有函......
  • MyBatisPlus简介及快速搭建
    一、简介MyBatisPlus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强,不做改变,为简化开发,提高效率而生。特性及官网链接(简称苞米豆):可在IDEA中安装以下插件:MybatisX:支持跳转,自动补全生成SQL;dynamic-datasource:基于SpringBoot的多数据源组件,功能强悍,支持Seat......
  • Swagger(一) Swagger/Springfox 入门简介
    转载自:https://blog.csdn.net/donglinjob/article/details/108550636 Swagger/Springfox入门简介一、Swagger 简介1前言接口文档对于前后端开发人员都十分重要。尤其近几年流行前后端分离后接口文档又变成重中之重。接口文档固然重要,但是由于项目周期等原因后端人员经......
  • 【STL】 pair/map的简介与用法
    pair简介:pair是一个很实用的"小玩意",当想要将两个元素绑在一起作为一个合成元素、又不想要因此定义结构体时,使用pair可以很方便地作为一个代替品。pair实际上可以看作一个内部有两个元素的结构体,且这两个元素的类型是可以指定的,如下面的短代码所示structpair{typena......