Ajax同步和异步

Posted Sakurakann

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ajax同步和异步相关的知识,希望对你有一定的参考价值。

Ajax在默认情况下是异步执行的,即其属性 async: boolean (是否异步);

同步和异步的区别:

同步: Client 向 Server请求数据,直到该部分数据返回时,Client在请求返回值后的相应程序队列才会按顺序执行,在此期间,Client处于假死状态;

异步:Cilent 向 Server请求数据,Cilent处于活动状态,程序队列继续执行,在Server将数据返回后,相应的Cilent响应会插入到程序序列中.

eg: A,B[Cilent向Server发送请求],C[Server向Client返回请求结果],D,E (其中A,D,E为顺序执行的Client程序);

同步过程: A -- B -- C -- D -- E; D会在C后执行,完全按照顺序;

异步过程: A -- B -- D -- E --C (可能的结果); 在B发送请求执行后,D不会等待,而是直接在B后执行,C的结果返回可能在D后,也可能会在D前,是在有结果后插入程序队列;

所以当涉及到Cilent中的其他程序队列可能使用到Ajax请求的Server数据时,建议使用同步方式;因为使用异步可能会有在队列其他程序使用Server数据时,该数据尚并返回,造成未定义undefine错误.

以上是关于Ajax同步和异步的主要内容,如果未能解决你的问题,请参考以下文章

ajax的同步和异步问题

Ajax同步和异步

js中请求数据的$post和$ajax区别(同步和异步问题)

ajax同步和异步的切换

Ajax同步异步;get和post

ajax的同步 和 异步