JavaScript解析机制
2014-10-15 23:13
465 查看
JavaScript是一种解释型语言,按照<script>块儿来预编译和执行。
JavaScript解释器在预编译阶段,先预声明变量,再预声明函数。在执行阶段,进行变量赋值,和函数执行。
示例6:
函数默认返回值为undefined
JavaScript解释器在预编译阶段,先预声明变量,再预声明函数。在执行阶段,进行变量赋值,和函数执行。
示例1:
预编译阶段,对于变量只进行预声明,并初始化值为undefined,在执行阶段才真正进行赋值。alert(variableA); //undefined var variableA = 2; alert(variableA); //2 alert(funcA); //function funcA(){alert('I am funcA.')} funcA(); //I am funcA. function funcA(){ alert('I am funcA.'); }
示例2:
预编译预条件无关!alert(variableA); //undefined alert(funcA); //function funcA(){alert('I am funcA.')} funcA(); //I am funcA if(true){ var variableA = 2; }else{ function funcA(){ alert('I am funcA.'); } } alert(variableA); //2
示例3:
JavaScript按照<script>代码块来预编译!<script> funcA(); //I am funcA too. function funcA(){ alert('I am funcA.'); } function funcA(){ alert('I am funcA too.'); } </script>
<script> funcA(); //I am funcA. function funcA() { alert('I am funcA.'); } </script> <script> funcA(); //I am funcA too. function funcA() { alert('I am funcA too.'); } </script>
示例4:
先预声明变量,再预声明函数,因此,预编译阶段variableA函数覆盖了variableA变量。在执行阶段,variableA变量被赋值为2,alert(variableA); //function variableA(){alert('I am variableA.')} var variableA = 2; function variableA(){ alert('I am variableA.'); } alert(variableA); //2
alert(variableA); //function variableA(){alert('I am variableA.')} function variableA(){ alert('I am variableA.'); } var variableA = 2; alert(variableA); //2
示例5:
alert(variableA); //undefined var variableA = function(){ alert('I am variableA.'); } alert(variableA); //function variableA(){alert('I am variableA.')}
alert(variableA); //undefined var variableA = function variableA(){ alert('I am variableA.'); } alert(variableA); //function variableA(){alert('I am variableA.')}
示例6:
函数默认返回值为undefined
var variableA = funcA(2); function funcA(num){ num = num + 1; } alert(variableA); //undefined
相关文章推荐
- 深入JavaScript(二)之解析机制
- JavaScript对内存分配及管理机制详细解析
- 深入解析JavaScript的闭包机制
- javascript解析机制
- 解析Javascript事件冒泡机制
- JavaScript学习路上---解析机制
- javascript解析机制——预解析
- 解析JavaScript的事件机制
- 解析Javascript事件冒泡机制
- JavaScript定时器与执行机制解析
- JavaScript对内存分配及管理机制详细解析
- 解析Javascript事件冒泡机制
- JavaScript垃圾回收机制解析
- 解析Javascript事件冒泡机制
- 深入JavaScript(二)之解析机制
- javascript垃圾收集机制与内存泄漏详细解析
- javascript解析机制——预解析
- 轻松搞定javascript预解析机制(搞定后,一切有关变态面试题都是浮云~~)
- javascript解析机制——预解析
- 解析Javascript事件冒泡机制