我有一个创建一个对象,并将其保存在另一个对象的ID的功能:在网上搜索使用Javascript - 试图遏制动态属性中的对象
var enemyList = {}; //global var
Enemy = function() {
var id = Math.random(); //random id
var enemy = {
some properties
};
enemyList.id = enemy;
}
现在,我发现“for循环”,我为了更新包含敌方目标参考每个ID编辑:
setInterval(update, 40); //execute update all the time
var frameCount = 0; //global var
function update {
if (frameCount % 100 === 0) // spawns new enemy every 4 seconds
Enemy();
for (var key in enemyList) {
enemyList.key.update(); //move them around...
}
}
每4秒一个新的敌人被创建,那么这个循环应该根据一些逻辑移动的每个敌人......问题是,一旦一个新的敌人被创造出来,它就代替了旧的敌人,四处移动,然后被替换掉下一个产生的敌人,即使它不应该,因为他们有独特的ID。为什么会发生? 谢谢你的时间。
你能否包含enemyList var的实现?请修复您的缩进。 – Reinard