ESTree_ES5
2022-04-09 18:43:48 0 举报
ES5语法树
作者其他创作
大纲/内容
AssignmentExpression
+ type: string = \"AssignmentExpression\"+ operator: AssignmentOperator+ left: Pattern | Expression+ right: Expression
UnaryOperator
\"+\" | \"-\" | \"!\" | \"~\" | \"typeof\" | \"void\" | \"delete\"
ContinueStatement
+ type: string = \"ContinueStatement\"+ label: Identifier | null
LabeledStatement
+ type: string = \"LabeledStatement\"+ label: Identifier+ body: Statement
CoditionalExpression
+ type: string = \"CoditionalExpression\"+ test: Expression+ consequent: Expression+ alternate: Expression
BinaryOperator
\"==\" | \"!=\" | \"===\" | \"!==\" | \"<\" | \"<=\" | \">\" | \">=\" | \"<<\" | \">>\" | \">>>\" | \"+\" | \"-\" | \"*\" | \"/\" | \"%\" | \"|\" | \"^\" | \"&\" | \"in\" | \"instanceof\"
ArrayExpression
+ type: string = \"ArrayExpression\"+ elements: [ Expression | null ]
ForStatement
+ type: string = \"ForStatement\"+ init: VariableDeclaration | Expression | null+ test: Expression | null+ update: Expression | null+ body: Statement
Function
+ id: Identifier | null+ params: [ Pattern ]+ body: FunctionBody
VariableDeclaration
+ type: string = \"VariableDeclaration\"+ declarations: [ VariableDeclarator ]+ kind: \"var\"
ThrowStatement
+ type: string = \"ThrowStatement\"+ argument: Expression
DebuggerStatement
+ type: string = \"DebuggerStatement\"
IfStatement
+ type: string = \"IfStatement\"+ test: Expression+ consequent: Statement+ alternate: Statement | null
Program
+ type: string = \"Program\"+ body: [ Directive | Statement ]
MemberExpression
+ type: string = \"MemberExpression\"+ computed: boolean+ object: Expression+ property: Expression
Directive
+ type: string = \"ExpressionStatement\"+ expression: Literal+ directive: string
Declaration
AssignmentOperator
\"=\" | \"+=\" | \"-=\" | \"*=\" | \"/=\" | \"%=\" | \"<<=\" | \">>=\" | \">>>=\" | \"|=\" | \"^=\" | \"&=\"
Node
+ type: string+ loc: SourceLocation | null
Literal
+ type: string = \"Literal\"+ value: string | boolean | null | number | RegExp
Statement
UpdateExpression
+ type: string = \"UpdateExpression\"+ operator: UpdateOperator+ prefix: boolean+ argument: Expression
Property
+ type: string = \"Property\"+ key: Literal | Identifier+ value: Expression+ kind: \"init\" | \"get\" | \"set\"
FunctionBody
+ body: [ Directive | Statement ]
LogicalExpression
+ type: string = \"LogicalExpression\"+ operator: LogicalOperator+ left: Expression+ right: Expression
SequenceExpression
+ type: string = \"SequenceExpression\"+ expressions: [ Expression ]
SwitchCase
+ type: string = \"SwitchCase\"+ test: Expression | null+ consequent: [ Statement ]
CallExpression
+ type: string = \"CallExpression\"+ callee: Expression+ argument: [ Expression ]
Expression
BlockStatement
+ type: string = \"BlockStatement\"+ body: [ Statement ]
NewExpression
+ type: string = \"NewExpression\"+ callee: Expression+ argument: [ Expression ]
WhileStatement
+ type: string = \"WhileStatement\"+ test: Expression+ body: Statement
DoWhileStatement
+ type: string = \"DoWhileStatement\"+ test: Expression+ body: Statement
ThisExpression
+ type: string = \"ThisExpression\"
TryStatement
+ type: string = \"TryStatement\"+ block: BlockStatement+ handler: CatchClause | null+ finalizer: BlockStatement | null
BreakStatement
+ type: string = \"BreakStatement\"+ label: Identifier | null
ObjectExpression
+ type: string = \"ObjectExpression\"+ properties: [ Property ]
FunctionDeclaration
+ type: string = \"FunctionDeclaration\"+ id: Identifier
VariableDeclarator
+ type: string = \"VariableDeclarator\"+ id: Pattern+ init: Expression | null
BinaryExpression
+ type: string = \"BinaryExpression\"+ operator: BinaryOperator+ left: Expression+ right: Expression
FunctionExpression
+ type: string = \"FunctionExpression\"
ExpressionStatement
+ type: string = \"ExpressionStatement\"+ expression: Expression
RegExpLiteral
+ regex: { pattern: string flags: string}
LogicalOperator
\"||\" | \"&&\"
UnaryExpression
+ type: string = \"UnaryExpression\"+ operator: UnaryOperator+ prefix: boolean+ argument: Expression
UpdateOperator
\"++\" | \"--\"
SwitchStatement
+ type: string = \"SwitchStatement\"+ discriminant: Expression+ case: [ SwitchCase ]
ReturnStatement
+ type: string = \"ReturnStatement\"+ argument: Expression | null
WithStatement
+ type: string = \"WithStatement\"+ object: Expression+ body: Statement
ForInStatement
+ type: string = \"ForInStatement\"+ left: VariableDeclaration | Pattern+ right: Expression+ body: Statement
Pattern
CatchClause
+ type: string = \"CatchClause\"+ param: Pattern+ body: BlockStatement
EmptyStatement
+ type: string = \"EmptyStatement\"
Position
+ line: number+ column: number
Identifier
+ type: string = \"Indentifier\"+ name: string
SourceLocation
+ source: string | null+ start: Position+ end: Position
收藏
0 条评论
下一页