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>

 

转载于:https://www.cnblogs.com/liule1225/p/3777752.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值