Javascript异步和同步ajax操作

Javascript async and synchronous ajax ops

本文关键字:ajax 操作 同步 异步 Javascript      更新时间:2023-09-26

如果我有一个同步ajax调用正在运行,并且在运行时进行了异步调用(通过setTimeout(((,第二个调用stop/interupt/会对第一个调用产生任何影响吗?

Javascript是单线程的。因此,setTimeout调用只能在没有其他运行的情况下激发。一旦同步ajax调用完成,并且发出ajax请求的函数通过返回来获得控制权,它就会启动。

Afaik,同步调用(又名阻塞调用(应该阻止执行,直到调用完成。因此,我认为异步调用应该在同步调用完成后开始

来自Mozilla开发人员中心:您不应该使用同步XMLHttpRequest,因为由于网络固有的异步性质,在使用同步请求时,内存和事件可能会以各种方式泄漏