Javascript 从函数中删除对象
Javascript removing an object from a function
我正在创建一个游戏,其中我有一个对象数组,其中一个数组容纳所有导弹对象。这个阵列需要经常从导弹中移除导弹,因为它们撞到墙壁(或玩家),但我似乎找不到一种方法来从阵列中删除对象而不会得到混乱的代码。最好我想要一种方法,从其中一个对象函数中删除对象,例如missiles.splice(this,1)
.
这段代码的示例如下
Missiles.prototype.Draw = function () {
if (this.x >= -200) {
ctx.beginPath();
ctx.fillStyle = "Black";
ctx.rect(this.x,this.y,this.width,this.height);
ctx.stroke();
ctx.fill();
} else {
missileCount.splice(this,1);
console.log('removed a missile')
}
};
但是,当我使用它时,屏幕上的随机导弹消失了
我有一个包含我的代码的粘贴(使用以下链接可能会有所帮助)http://pastebin.com/f5S8zhJg
游戏地图的大小是无限的,这很有趣。
missileCount
是一个数组。
splice
需要 2 个整数。
this
是导弹的一个实例。
在不涉足您的代码的情况下,我认为您想要:
missleCount.splice(missleCount.indexOf(this),1);
相关文章:
- 解析JSON并从中删除对象会出错
- 在特定条件下从存储在localStorage中的阵列中删除对象
- Es6:能够在设置/更新/删除对象属性时调用自定义方法
- 正在从列表中删除对象
- 删除对象时终止setInterval
- 在JavaScript中高效地删除对象
- 使用javascript(ajax,jquery?)从表中删除对象(用户等)
- 从范围中删除对象时,它会在 Angularjs 中隐藏其余对象
- 如何正确地从数组中删除对象
- 捕捉.svg — 单击其中一个元素时删除对象
- 如何删除对象数组中的对象:jquery
- 下划线.js,根据键值删除对象数组中的重复项
- 如何在Immutable中从数组中删除对象
- 删除对象属性在执行删除操作之前生效
- 使用indexOf从列表中删除对象
- 从数组中删除对象
- 如何使用.bind(this)删除对象的事件侦听器
- 正在创建事件侦听器以从本地存储中删除对象
- 如何通过引用(javascript)从数组中删除对象
- 如何按条件删除对象中的对象