亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【學習打卡】第八天 2小時極速入門 TypeScript

標簽:
Typescript

学习课程名称:2小时极速入门 TypeScript
章节名称:了解TypeScript 工作流
讲师姓名:阿莱克斯刘


课程内容概述

  1. 什么是 TypeScript
  2. 开发环境配置
  3. TypeScript工作流

什么是TypeScript?

TypeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。TypeScript通过TypeScript编译器或Babel转译为JavaScript代码,可运行在任何浏览器,任何操作系统。

TypeScript的优势?

以JavaScript为基础构建的语言
可以在认可支持JavaScript的平台中执行
一个JavaScript的超集
TypeScript扩展了JavaScript,并添加了类型
TS不能被JS解析器直接执行
TS需要编译转换为JS
TypeScript增加了什么?

类型
支持ES的新特性
添加ES不具备的新特性
丰富的配置选项
强大的开发工具

开发环境搭建

  1. 安装Node
  2. 全局安装TypeScript (npm install -g typescript)

TypeScript工作机制

  1. TypeScript 源码经过扫描器扫描之后变成一系列 Token
  2. 解析器解析 token,得到一棵 AST 语法树
  3. 绑定器遍历 AST 语法树,生成一系列 Symbol,并将这些 Symbol 连接到对应的节点上
  4. 检查器再次扫描 AST,检查类型,并将错误收集起来
  5. 发射器根据 AST 生成 JavaScript 代码

AST 中的节点称为 Node,Node 中记录了这个节点的类型、在源码中的位置等信息。不同类型的 Node 会记录不同的信息。如对于 FunctionDeclaration 类型的 Node,会记录 name(函数名)、parameters(参数)、body(函数体)等信息,而对于 VariableDeclaration 类型的 Node,会记录 name(变量名)、initializer(初始化)等信息。一个源文件也是一个 Node —— SourceFile,它是 AST 的根节点。

简而言之,绑定器的终极目标是协助检查器进行类型检查,它遍历 AST,给每个 Node 生成一个 Symbol,并将源码中有关联的部分(在 AST 节点的层面)关联起来。

Symbol 是语义系统的基本构造块,它有两个基本属性:members 和 exports。members 记录了类、接口或字面量实例成员,exports 记录了模块导出的对象。Symbols 是一个对象的标识,或者说是一个对象对外的身份特征。如对于一个类实例对象,我们在使用这个对象时,只关心这个对象提供了哪些变量/方法;对于一个模块,我们在使用这个模块时,只关心这个模块导出了哪些对象。通过读取 Symbol,我们就可以获取这些信息。


图片描述图片描述图片描述

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消