ajax async: false 选项如何在引擎盖下工作?



当我进行ajax调用并传递async: false时,它会发出异步请求,但它会停止代码执行,直到请求完成(使其同步(。

它在引擎盖下是如何工作的?如何使异步请求变得同步?

我正在尝试实现相同的逻辑,并希望更好地了解它是如何工作的。

jQuery使用XMLHttpRequest对象。它具有内置的同步模式(在本机代码中处理(。

正如您所注意到的,它会阻止所有其他代码执行。因此,该功能已弃用,不应使用。

请注意,这不是将异步代码转换为同步代码,在一般情况下没有任何技术可以做到这一点(尽管await可能会在 promise 中产生同步代码的错觉(。

最新更新