Javascript addEventListener和数组内部的值递减问题
我在数组内部使用addEventListener时遇到了一个问题。我的目标是在每次点击后降低敌人的生命值。添加一些代码进行解释: var图像; var=[]; 功能启动 { image=document.getElementByIdimage; 敌人,敌人; 画 } 函数图 {Javascript addEventListener和数组内部的值递减问题,javascript,html,arrays,animation,addeventlistener,Javascript,Html,Arrays,Animation,Addeventlistener,我在数组内部使用addEventListener时遇到了一个问题。我的目标是在每次点击后降低敌人的生命值。添加一些代码进行解释: var图像; var=[]; 功能启动 { image=document.getElementByIdimage; 敌人,敌人; 画 } 函数图 { 如果[0].hp回调函数有自己的函数,请使用安装的箭头函数: this.image.addEventListener("click", () => { console.log("Click w
如果[0].hp回调函数有自己的函数,请使用安装的箭头函数:
this.image.addEventListener("click", () =>
{
console.log("Click works but hp doesn't decrease");
this.hp--; // will use the parent's this.hp
})
var图像;
var=[];
功能启动{
image=document.getElementByIdimage;
敌人,敌人;
画
}
函数图{
如果敌人[0]。hp{
console.logClick工作,this.hp=,this.hp;
这是hp-;
}
}
这是因为事件侦听器中的DOM元素将是此处的图像,而不是类的实例。您可以通过记录来证明这一点。谢谢,这部分工作正常。但现在我有另一个问题,为什么第13行中的splice不删除HTML DOM中CreateForeign函数创建的值?我应该采取什么不同的方法来删除这两个值保存在敌方[]数组内部和HTML DOM中的?