bebel抽象语法树(AST)中js节点名称

babel代码解析成抽象语法树:在线工具

FunctionDeclaration(函数声明)

function a() {}

FunctionExpression(函数表达式)

var a = function() {}

ArrowFunctionExpression(箭头函数表达式)

()=>{}(此处可以思考:为什么没有箭头函数声明,以及Declaration和Expression的区别)

AwaitExpression(await表达式)

async function a () { await b() }

CallExpression(调用表达式)

a()

MemberExpression(成员表达式)

a.b

VariableDeclarator(变量声明)

var,const,let(var,const,let用Node中的kind区分)

Identifier(变量标识符)

var a(这里a是一个Identifier)

NumericLiteral(数字字面量)

var a = 1

StringLiteral(字符串字面量)

var a = ‘a’

BooleanLiteral(布尔值字面量)

var a = true

NullLiteral(null字面量)

var a = null(此处可以思考:为什么没有undefined字面量)

BlockStatement(块)

{}

ArrayExpression(数组表达式)

[]

ObjectExpression(对象表达式)

var a = {}

SpreadElement(扩展运算符)

{…a},[…a]

ObjectProperty(对象属性)

{a:1}(这里的a:1是一个ObjectProperty)

ObjectMethod(函数属性)

{a(){}}

ExpressionStatement(表达式语句)

a()

IfStatement(if)

if () {}

ForStatement(for)

for (;😉{}

ForInStatement(for in)

for (a in b) {}

ForOfStatement(for of)

for (a of b) {}

ImportDeclaration(import声明)

import ‘a’

ImportDefaultSpecifier(import default说明符)

import a from ‘a’

ImportSpecifier(import说明符)

import {a} from ‘a’

NewExpression(new表达式)

new A()

ClassDeclaration(class声明)

class A {}

ClassBody(class body)

class A {}(类的内部)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值