Javascript 事件发生在元素上和从dom中的元素中删除事件之间有什么区别?

Javascript 事件发生在元素上和从dom中的元素中删除事件之间有什么区别?,javascript,asynchronous,reactive-programming,pure-function,Javascript,Asynchronous,Reactive Programming,Pure Function,我想了解当我单击一个dom元素,然后单击该元素上发生的事件,并调用相关的事件处理程序函数。这是异步函数的基本示例。 我的问题与此背后的实现有关。 当我们单击用户屏幕上的任何dom元素时,单击事件发生。事件在元素上发生和逐个元素发出事件之间有什么区别?发生和释放是一样的吗?如果没有,那有什么区别 当我们注册回调函数时,它们存储在内存中的什么位置?我不是在这里询问事件循环(主堆栈和回调队列) 事件对象是如何创建的,是谁创建的? 一个事件如何映射到相关的回调函数?哇,一下子有很多问题。呵呵,meta的

我想了解当我单击一个dom元素,然后单击该元素上发生的事件,并调用相关的事件处理程序函数。这是异步函数的基本示例。 我的问题与此背后的实现有关。 当我们单击用户屏幕上的任何dom元素时,单击事件发生。事件在元素上发生和逐个元素发出事件之间有什么区别?发生和释放是一样的吗?如果没有,那有什么区别

当我们注册回调函数时,它们存储在内存中的什么位置?我不是在这里询问事件循环(主堆栈和回调队列)

事件对象是如何创建的,是谁创建的?
一个事件如何映射到相关的回调函数?

哇,一下子有很多问题。呵呵,meta的人不会喜欢的!但这也需要一个长而详细的答案

事件在元素上发生和逐个元素发出事件之间有什么区别

这种差异[目前]还不是传统的。所以这主要来自我自己的观察,我想很少有人会不同意我的观点

发生和释放是一样的吗

不,它们是不同的

如果没有,那有什么区别

发生的事实是用户实际做了一些事情:单击、滚动、拖动开始、拖动结束、悬停、右键单击等

发射是与事件相关联的逻辑。实际上,您可以在不等待特定事件发生的情况下运行该事件

例如:

以下代码将侦听器附加到click事件

const actionable=document.querySelector('button[type=“button”]”);
可操作。addEventListener('单击',()=>
{
警惕(‘点击我’);
});

点击我