问:在视频中,他没有在对象之前或之后给prop赋值,只是将其添加到for循环中。.Js怎么知道?
答:“ prop”是一个虚拟变量,我们希望每次迭代都可以更改其值(对象内部不同的属性名称)。建立预定义语言的人员,以便该虚拟对象指向对象“ in”之后的对象(例如“ person”)的键(属性名称)。从MDN文章for ...中的“ for for ... in循环仅迭代可枚举的属性”。关键字存在“属性”。您不必为单个键名值分配“ prop”值,因为那样的话,它只会指向一个属性,这违反了循环遍历对象内部不同属性的目的。
答:我注意到他首先说您必须将for循环定义为
for(var x in objectName){};
但是,他接着继续进行示例,而未使用var创建他的“ x”值。
for(x in objectName){};
另外,需要注意的是,视频中的代码非常简单,并且未将“ X”定义为for in循环之外的变量。