如何理解javascript中的async以及与EventLoop的通信

How to understand async in javascript and the communication with EventLoop?

本文关键字:EventLoop 通信 何理解 javascript 中的 async      更新时间:2023-09-26

嗯,我是新的javascript,并对什么是javascript中的异步和事件循环之间的通信感到困惑?

加载页面时,实际上是在向服务器发送请求。服务器响应,页面显示在浏览器中。但是,您可能需要为您的页面与服务器进行进一步的通信。

如果您不想在每次发送请求时都重新加载页面,那么您需要通过Javascript发送请求。下面是它的工作原理:

  • 浏览器向服务器发送请求
  • 服务器处理请求
  • 服务器返回一个响应
  • 浏览器接收响应并处理它

有两种方法。浏览器可以等待响应,也可以在从服务器接收到响应时为事件设置处理程序。如果浏览器等待,那么这是一个同步请求,因为浏览器正在同步。如果你在浏览器上有一个所谓的回调,当收到服务器的响应时执行,那么它就是一个异步请求。

同步要求:

  • 浏览器向服务器发送请求
  • 浏览器等待响应
  • 当响应到达或超时时,浏览器中的脚本继续

异步请求:

  • 浏览器向服务器发送请求
  • 浏览器继续运行脚本
  • 当响应到达时,触发回调函数

建议使用异步请求,因为在这种情况下,浏览器上的脚本会继续运行。