猿问

javascript var关键字及作用域

<script>
var a  = "jason";

foo();

function foo(){
	alert(a);
	var a = "perle";
}
	
</script>

foo方法里a变量为什么输出的是undefined,不是应该输出jason的吗?


_Jason
浏览 1285回答 2
2回答

qq_bs反骨仔bs_0

<script> var a  = "jason";   foo();   function foo(){ var a;      alert(a);      a = "perle"; }       </script>由于存在变量名提升,你写的代码会自动翻译成我的代码,所以结果是这样,我写的你应该看得懂吧

arlenhui

这是JavaScript初始化时比较特别的地方,现在注意到很不错,相关视频http://www.imooc.com/video/6491
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答