前言

我们已经知道了 TypeScript 是什么,以及为什么要用 TypeScript,今天,我们就来学习怎么初步使用它。

TypeScript 的使用流程

原始的 TypeScript 文件以 .ts 结尾,它不能被直接使用到页面中,需要经过编译,转换成 JavaScript (.js)文件才行。

TypeScript 的使用流程基本上如下图所示:

编译 TypeScript 文件的这一步,我们使用的是前面安装的全局 TypeScript 模块,编译指令为:

tsc index.ts

通过这一步的编译之后,会在 index.ts 同级目录下生成一份 index.js 文件,我们最终在页面中使用的就是编译产生的 JavaScript 文件。

我们在前面说过,TypeScript 是静态的,会在编译过程中进行数据类型、语法等的检测,如果发现错误会立即报错,比如我们编译下面的 TypeScript 代码:

// index.ts
let a: number = 12;
a = "编程三昧";

产生如下报错:

虽然编译阶段发生了报错,但最终还是会生成一份 JavaScript 文件:

// index.js
var a = 12;
a = "编程三昧";

编译报错后是否生成 JavaScript 文件跟 TypeScript 编译器的配置项有关,我们会在后面介绍编译配置的详细信息。

TypeScript 基本语法规则

学习一门语言,首先应该学习的应该是它的语法规则,只有掌握了规则,才能保证少犯错误。

TypeScript 的基本语法规则和 JavaScript 相同。

TypeScript 保留关键字

和 JavaScript 一样,TypeScript 也有保留关键字,主要有:

我们在使用 TypeScript 进行编码时,需要注意这些保留关键字的使用。

空白和换行

TypeScript 会忽略程序中出现的空格、制表符和换行符。

我们经常使用空格、制表符通常用来缩进代码,使代码易于阅读和理解。

function add(x: number, y: number): number {return x + y;
}

TypeScript 区分大小写

TypeScript 区分大写和小写字符。

let name: string = "bianchengsanmei";
let Name: string = "编程三昧";
// name 和 Name 是不同的变量

分号是可选的

每行指令都是一段语句,你可以使用分号或不使用, 分号在 TypeScript 中是可选的,但是我们建议使用每一段语句都使用分号结束。

TypeScript 注释

注释是一个良好的习惯,虽然很多程序员讨厌注÷释,但还是建议你在每段代码写上文字说明。

注释可以提高程序的可读性。

注释可以包含有关程序一些信息,如代码的作者,有关函数的说明等。

  • 单行注释 ( // ) − 在 // 后面的文字都是注释内容。
  • 多行注释 (/* */) − 这种注释可以跨越多行。
/** @Author       : 编程三昧* @FilePath     : /typescript_learning/1.基本使用/index.ts*/// 名称的拼音
let name: string = "bianchengsanmei";
// 名称的汉字
let Name: string = "编程三昧";

总结

关于 TypeScript 的使用流程和基本语法规则就说到这里,其实和 JavaScript 大差不差。

学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!

大家好,我是〖编程三昧〗的作者 隐逸王,我的公众号是『编程三昧』,欢迎关注,希望大家多多指教!

系统学习 TypeScript(二)——开发流程和语法规则相关推荐

  1. linux中ftp的工作原理,Linux系统学习 十二、VSFTP服务—简介与原理

    1.简介与原理 互联网诞生之初就存在三大服务:WWW.FTP.邮件 FTP主要针对企业级,可以设置权限,对不同等级的资料针对不同权限人员显示. 但是像网盘这样的基本没有权限划分. 简介: FTP(Fi ...

  2. ZYNQ学习(1) —— 基础开发流程

    ZYNQ学习(1) -- 基础开发流程 1. 现在PlanAhead中新建一个工程 2. 添加嵌入式内核,进入EDK中配置内核(导入XML模板,添加模块,设置端口等) 3. 回到PlanAhead生成 ...

  3. 2021-03-23 python数据处理系统学习(二)控制语句

    2021-03-23 python数据处理系统学习(二)控制语句 1.条件语句(if.else和elif) x=10 if x < 0:print("x小于0") else: ...

  4. 【FPGA入门教程】(二)FPGA学习路线及开发流程

    一.FPGA学习路线 工具使用 -> 语法学习 -> 逻辑设计 -> IP使用 ->接口设计 -> 时序分析 -> 片上系统 1.工具使用 Altera:Quart ...

  5. 安卓学习总结-UI开发流程

    最近做的工作,主要是对安卓的一系列UI组件的开发,在完成设计需求的过程中,对UI开发流程有了一点小想法,今天来把他们总结一下. UI开发流程图 一.了解安卓中的View体系 在UI开发的过程中,我们一 ...

  6. java学mybatis还用学jdbc吗,mybatis系统学习(二)——使用基础mybatis代替原始jdbc

    mybatis系统学习(二)--使用基础mybatis代替原始jdbc 前言 这一篇笔记的内容应当是建立在上一篇的基础之上,不论是使用的数据表,还是对应的实体类,都在上一篇有过说明. 有兴趣的或者对相 ...

  7. 嵌入式系统需求分析_嵌入式开发流程是什么?

    嵌入式开发流程 当前,嵌入式开发已经逐步规范化,在遵循一般工程开发流程的基础上,嵌入式开发有其自身的一些特点.主要包括系统需求分析(要求有严格规范的技术要求).体系结构设计.软硬件及机械系统设计.系统 ...

  8. 系统学习 TypeScript(四)——变量声明的初步学习

    前言 认识了 TypeScript 中的基础类型,接下来当然是变量声明的相关学习了. 声明多维数组 假如有这么一个声明: let arr3: number[][][]; 想要知道 arr3 的具体类型 ...

  9. 区块链知识系列 - 系统学习EVM(二)-存储与安全

    区块链知识系列 - 系统学习EVM(一) 特点 EVM出于所谓运算速度和效率方面考虑,采用了非主流的256bit整数. 不支持浮点数 缺乏标准库支持,例如字符串拼接.切割.查找等等都需要开发者自己实现 ...

最新文章

  1. Typedef用法(转载)
  2. 机器学习实战读书笔记--logistic回归
  3. 【NLP】Google T5速读
  4. ubuntu安装jdk,ubuntu设置java环境变量
  5. python的高级特性:切片,迭代,列表生成式,生成器,迭代器
  6. python素材和代码_python之文件和素材
  7. oracle的sga
  8. leecode刷题(4)-- 存在重复数组
  9. smartgit 安装
  10. Ruby学习笔记-循环与选择结构
  11. AutoLayout的三种设置方式之——NSLayoutConstraint代码篇
  12. ZeroC Ice介绍与简单demo构建
  13. C#图片处理(裁剪,缩放,清晰度,水印)
  14. 【协同任务】基于matlab二阶一致性算法多无人机协同编队动态仿真【含Matlab源码 1740期】
  15. Mysql三种备份,mysqdump,xtrabackup工具,基于lvm-snapshot快照备份等。
  16. 前端常见面试题-css篇
  17. php公众号开发 点菜,微信公众号点餐系统怎么弄 微信点餐系统怎么开发
  18. 没有U盘怎么重装系统 无U盘重装系统教程
  19. VMware Workstation中安装系统和VMware tools
  20. Mac设置顶部菜单栏技巧?

热门文章

  1. bootstrap select下拉框模糊搜索和动态绑定数据解决方法
  2. Python是否支持短路?
  3. 使用Json.net进行序列化时,如何更改属性名称?
  4. 使用getApplication()作为上下文的对话框抛出“无法添加窗口-令牌null不适用于应用程序”
  5. Python基础-循环
  6. mybatis多种方式注册映射文件
  7. ygbook和ptcms哪个好_长期更新,国内所有小说建站系统整理
  8. python课程的中期报告_寒假中期学习报告
  9. 随笔小算法:从一个数据根据CRC校验出特定包
  10. python size和count_groupby 的妙用(注意size和count)