1.语言的构成
计算机编程语言上,无论什么语种,都是由基本要素组成的,都会有「类型」「运算符」「流程语句」「函数」「对象」等概念来表达计算机中存在内存中的0和1,以及背后运算与逻辑。
从开发到执行的过程
源码⇒token⇒ast⇒ 机器可执行码
抽象语法树(abstract s yntax tree 或者缩写为 AST):是解析源代码的要素,抽象成语法结构的树状表现形式。
1.ts语法解析树
语法解析树它是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。
const NodeObject = {
// 在源代码中的开始位置
pos: 0,
// 在源代码中的结束位置
end: 925,
/**标志 用于识别符号类别*/
flags: 0,
/**修改器标志缓存*/
modifierFlagsCache: 0,
/** 变换的标志 */
transformFlags: 1,
/** 描述在语法树中的树节点 */
parent: undefined,
/** 类型 枚举:*/
kind: 261,
/** 节点声明的符号 */
symbol: undefined,
/** 节点声明的本地符号(仅通过导出节点的绑定初始化) */
localSymbol: undefined,
/** 与节点关联的区域设置(通过绑定初始化) */
locals: undefined,
/**声明顺序中的下一个容器(通过绑定初始化)*/
nextContainer: undefined,
/** 名字相关信息 */
name: IdentifierObject {
pos: 900,