代码如下:if(!("a" in window)){ var a = 1;}alert(a);我已经看过了相关解释,原因是变量声明会被提升,但是变量赋值并不会被提升,但还是不太明白。if语句块里面的代码到底有没有被执行?如果没有,变量的提升是哪条语句造成的?如果执行了,那么a的值应该就是1啊。尝试了控制台输入以下代码alert(b)//报错,b未被定义;if (2>1){ var b=1;}alert(b)//1
添加回答
举报
0/150
提交
取消