js中变量提升

时间:2017-03-25 22:20:43   收藏:0   阅读:157
1 var v=‘Hello World‘;
2 (function(){
3 alert(v);
4 var v=‘I love you‘;
5 })() 

会出现alert出来的是undefined,原因是因为在函数域里定义一个和外部变量一样名称的变量时,变量的声明会提升至第一句,赋值则不会变。所以上述语句其实是这样执行的

var v=‘Hello World‘;
(function(){
var v;
alert(v);
v=‘I love you‘;
})() 

原文:http://www.cnblogs.com/wawazhang/p/6618740.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!