请问这段js代码的变量对象是什么?

alert(x); //"x" is not definedalert(b); //"undefinedx = 10;var y = 20;

x是否成为了window的一个属性而非变量?
y是变量对象吗?

因为我看到了这么一段话

在《Javascript高级程序设计》4.2.2一节当中有这么一句话:“如果初始化变量时没有使用var声明,该变量会自动被添加到全局环境中。”
首先,我们应该先明确一点,使用var关键字是声明变量的唯一方式。如果没有var 的话,例如 a = 5 ,a就将作为全局对象的一个属性,而不是一个变量。

区别如下:

alert(x); //"x" is not defined alert(b); //"undefined

x = 10; var y = 20;

进入上下文后第一阶段:

VO = { x:10; }

VO 中并没有y的原因是,y 并不是变量。

请问他说的对吗?


收到一只叮咚
浏览 473回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript