在C语言中,如果我不动态malloc函数内部的任何内容,则函数结束时将释放它。我不知道Javascript(特别是事件监听器)在这种意义上是如何工作的。问题是,如果在函数内部声明了事件侦听器,则函数结束或继续侦听时会杀死该事件侦听器吗?
上下文
我有一个对象page{}
,带有方法battle()
。
在页面的choose_action()
方法中,我叫battle()
。
battle()
结束时,将再次调用choose_action
。
Battle()
将event.listeners
寻址到具有固定ID(“攻击”,“防御”等)的按钮。当按下id为“ attack”的img时,将调用attack()
(也是page{}
方法)函数。
我的意思是,在event.listeners
中创建的battle()
是否是全局的?还是在battle()
结束时将它们释放?恐怕再次调用Battle()会创建两倍的attack_event_listeners
,每次单击都会造成攻击(n)次,n是调用battle()
的次数。