我正在制作带有 canvas 标签的 Javascript 游戏,并且我正在使用增强的 for 循环来更新玩家位置。
简单来说:
var actors = new Array();
var player = new Actor(0, 0, img);
actors[0] = player;
function update_positions() {
//position 1
for(var a in actors) {
//position2
a.xpos += a.xvel;
a.ypos += a.yvel;
}
}
就在位置 1 的 for 循环之外,我可以访问 actor[0].xvel 的正确值。在位置 2 的 for 循环内, a.xvel 未定义。有人可以向我解释发生了什么吗?