javascript学习笔记------预编译期和执行期

 JavaScript在装载时的执行顺序是根据脚本标签<script>的出现的顺序来确定的。

但其在解释执行前,会对JavaScript进行一次“预编译”,在预编译的过程中,将那些用var声明的变量设置

为活动对象的属性认值为“undefined”,并且将那些以function定义的函数也添加为活动对象的

属性,而且他们的值正函数的定义,匿名函数将不被解析

变量初始化过程即赋值过程发生在解释执行期,而不是编译期

示例1:

<script type='text/javascript'>

test();

function test()

{

    alert('a');

}

</script>

示例2:

<script type='text/javascript'>

test();//非正常输出。 未定义值

var test=function()

{

   alert('a');

}

</script> 

示例3:

 <script type='text/javascript'>

 alert(a);//输出 underfined

 var a=1;

 </script>

 

posted @ 2014-06-09 13:48  yi-  阅读(269)  评论(0编辑  收藏  举报