javascript – Fragen zu Ajax Asynchronous
typecho
typecho 2017-07-05 10:52:26
0
4
1028

async 默认是 true,即为异步方式,$.Ajax 执行后,会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.Ajax里的success方法,这时候执行的是两个线程。若要将其设置为false, dann sind alle Anfragen synchrone Anfragen, bevor es keinen Rückgabewert gibt, die synchrone Anfrage sperrt den Browser und der Benutzer andere Vorgänge muss warten, bis die Anfrage abgeschlossen ist, bevor sie ausgeführt werden können.

Was sind die konkreten Beispiele für diesen anderen Vorgang? Bezieht er sich auf eine HTTP-Anfrage oder ein JS-Skript?

typecho
typecho

Following the voice in heart.

Antworte allen(4)
Peter_Zhu

先上图

asyncfalse 的时候,阻塞代码直到 ajax 调用返回,所以是先执行的 done(即 success) 再执行的 ajax 调用之后的那句 console.log

asynctrue(默认) 的时候,不阻塞代码,所以下面的 console.log 先执行,等 ajax 返回之后再执行的 done 里面的 console.log

曾经蜡笔没有小新

指js脚本
http://transcoder.tradaquan.com/from=2001a/bd_page_type=1/ssid=0/uid=0/pu=usm%401%2Csz%401320_2003%2Cta%40iphone_1_10.3_1_11.5/baiduid=3ECCA1E6D2665DB48EFEBB60D9D9084F/w=0_10_/t=iphone/l=3/tc?ref=www_iphone&lid=8260698868132866872&order=1&fm=alhm&h5ad=1&srd=1&dict=32&tj=h5_mobile_1_0_10_title&w_qd=IlPT2AEptyoA_yivDVKcCTpsvgzWOeIntjcXa3jSqfgrUO_&sec=21456&di=8e54227838fdccf9&bdenc=1&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEQGG_ytK1DK6mlrte4viZQRAVDb6QHOTCU8sumX0sqdFtXLR_7Mi8xR_qbIwdzZz

学霸

$.Ajax 后面的 js 脚本。(最好不要使用脚本这个词)

迷茫

如果ajax是同步的,就是说js顺序执行,http请求是ajax发的,js是就是js,不要混为一谈。
用户其他操作,应该是指用户触发了和js有关的操作。如果ajax后面有绑定某个元素的时间,是可以触发的。
最终总结就是,当前js脚本,同步ajax时,脚本顺序执行;异步ajax时,异步执行,所谓异步执行就是,执行到ajax时,不等请求是否返回,直接执行ajax之后的js语句。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage