>[danger]网络请求xhr是什么任务? 在浏览器中,网络请求 XHR 是一个宏任务。当我们发起一个网络请求 XHR 时,浏览器会创建一个新的 XMLHttpRequest 对象,并将其放入到一个任务队列中等待执行。 XHR 的执行和 HTTP 请求涉及到网络通信,需要从远程服务器获取数据,因此需要较长的时间才能完成。在此期间,浏览器会继续执行其他的宏任务或微任务,等到 XHR 请求完成后才会将其回调函数放入到消息队列中,等待下一个事件循环取出并执行。因此,在某些情况下,XHR 可能不是按照我们预期的顺序执行的。 需要注意的是,在不同的浏览器或环境中,XHR 的实现和执行机制可能有所不同。例如,对于一些比较新的浏览器,可能会使用 Fetch API 来替代 XMLHttpRequest,而对于 Node.js 等服务端环境,可能使用一些类似 axios 等的第三方 HTTP 库来发送请求。但无论采用何种方式发起网络请求,都是一个宏任务,需要等待网络通信完成后才会得到响应。