javascript - JavaScript 中的所有事件侦听器如何保持活动或活动状态?
问题描述
我一直想知道,即使在您编写的 JavaScript 代码已被解析之后,JavaScript 中的事件处理程序如何始终监听后续操作以一次又一次地触发事件。我试图在网上进行研究,但我没有找到任何资源来解释事件侦听器如何保持活跃或活跃。
我了解调用堆栈的工作原理,但我只想知道所有事件侦听器如何保持活动或活动状态。
例如addEventListener
,"click"
如果单击按钮,事件将始终运行指定的回调。那么方法添加的回调如何addEventListener
始终保持活动或活动状态?
解决方案
JavaScript 的这种行为通常被描述为“事件循环”。JavaScript 引擎运行、运行、运行并不断寻找新事件。它将一直运行,直到所有事件处理程序都被分离。现在,如果一个事件被触发,它将最终进入一个事件队列。然后某个时候事件循环将事件从队列中取出,并执行它。这将创建一个调用堆栈,如果展开,则循环继续。
推荐阅读
- javascript - Github 网页外部 css 无法正常工作,但 js 工作正常
- docker - Nuxt.js SSR w/ Nest API 在 Docker 容器中部署到 AWS
- android - 如何在flutter中使用fxpoi包读取CSV文件
- python - 使用 keras 将图像划分为子部分
- python - Python同时监听和分析数据
- python-3.x - Pandas 对条形图进行分组和重采样:
- javascript - 适用于 PDF-417 格式的 Javascript 条码/OCR 阅读器
- hex - 串行数据温度转换
- php - 如何在 PHP 中访问对象元素
- css - 如何在 React 中导入和使用 materialize(或任何其他 css 库)sass