js引擎
2016-05-13 23:29:01 4 举报
JavaScript引擎是一种专门处理和执行JavaScript代码的解析器。它的主要任务是将JavaScript代码转换为计算机可以理解和执行的机器语言。JavaScript引擎通常嵌入在浏览器中,用于解析网页中的JavaScript代码,使网页具有交互性和动态性。此外,还有一些独立的JavaScript引擎,如Node.js,可以在服务器端运行JavaScript代码。JavaScript引擎的工作原理包括词法分析、语法分析和执行三个阶段。词法分析将源代码分解成一个个的词素(token),语法分析将这些词素组合成抽象语法树(AST),最后执行引擎根据AST来执行代码。
作者其他创作
大纲/内容
3 RHS
2
编译器
负责编译执行
var a = 2;作用域
1. 编译器询问作用域是否存在var a。如果存在,编译器忽略声明,继续编译;否则 要求作用域定义一个名字为a的变量;2. 编译器会为引擎生成运行所需要的代码,这些代码用于处理 a = 2;3. 引擎询问作用域是否存在一个叫做 a 的变量。如果存在,引擎使用这个变量,否则 继续查找该变量,如果最终找到a 给它赋值 2;否则抛出异常 undefined
PS:变量的赋值分为两个个操作,首先编译器在当前作用域中声明变量(如果 之前没有声明过),然后引擎在作用域中查找该变量,如果找到给它赋值。
语法分析代码生成
V8引擎
变量声明
作用域是一套规则,确定何处怎样查找变量,如果查找的目的是为了赋值进行左查询(LHS),如果查找的目的是为了得到结果,则进行右查询(RHS)
1 LHS
0 条评论
下一页
为你推荐
查看更多