【发布时间】:2015-02-05 22:01:50
【问题描述】:
我正在通过玩这个游戏重新学习 JavaScript
文档:http://play.elevatorsaga.com/documentation.html#docs
目前试图击败有两个电梯的第 4 级,我想使用 for each 循环遍历每个电梯对象,然后调用方法来执行以下操作:
var maxFloor = 7;
var basement = 0;
// when each elevator is idle, go to each floor
for each(var e in elevators){
e.on("idle", function() {
//The elevator is idle, so let's go to all the floors (or did we forget one?)
for(var i = basement; i < maxFloor; i++){
e.goToFloor(i);
}
});
}
为什么不编译?当在for each 循环之外调用__.on() 方法时,一切正常。对于 javascript,我是否缺少一些基本的东西?
谢谢
【问题讨论】:
-
e并不是您在第二次循环发生时所认为的那样。 -
@KevinB 嗯,
e不是elevator吗?谢谢 -
它将永远是最后一个,而不是您期望的那个。它也将是数组的索引,而不是值。
-
@KevinB 我明白了,我能够让它与普通的
for循环一起工作,并将var视为int并且有效。再次感谢!
标签: javascript