首页 新闻 赞助 找找看

各位大神,帮忙解答一下js前端问题。。

0
[已解决问题] 解决于 2016-03-22 18:05

<script type=”text/javascript”>
var a,b;
(function(){
alert(a);
alert(b);
var a=b=3;
alert(a);
alert(b);
})();
alert(a);
alert(b);
</script>

undefined,undefined,3,3,undefined,3,

 

最后的弹出a,b的值为什么是undefined,3....

js
相忘江湖何处去的主页 相忘江湖何处去 | 初学一级 | 园豆:140
提问于:2016-03-09 16:48
< >
分享
最佳答案
0
var a, b;
(function() {
    
    //第一个执行,发现a在下面已经申明了,但是在之前调用 所以是undefined
    alert(a);
    
    //第二个执行,发现b在下面已经申明了,但是在之前调用 所以是undefined
    alert(b);
    
    var a = b = 3;
    
    //第三个执行,发现a在上面已经申明了并且赋值了 3
    alert(a);
    
    //第四个执行,发现a在上面已经申明了并且赋值了 3
    alert(b);
})();

 //第五个执行,发现a在上面已经申明了但没有赋值undefined
alert(a);

//第六个执行,var a = b = 3;这样申明导致b变成了全局变量 3
alert(b);

 

奖励园豆:5
MrNice | 老鸟四级 |园豆:3450 | 2016-03-09 17:32

谢谢 ,解答。。没仔细观察。。就发问了。.还是要谢谢

相忘江湖何处去 | 园豆:140 (初学一级) | 2016-03-09 17:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册