当前位置:首页 > 日记 > 正文

细数Ajax请求中的async:false和async:true的差异

细数Ajax请求中的async:false和async:true的差异

实例如下:

function test(){  var temp="00";  $.ajax({    async: false,    type : "GET",    url : 'userL_checkPhone.do',    complete: function(msg){      alert('complete');    },    success : function(data) {      alert('success');      temp=data;      temp="aa";    }  });  alert(temp);  }

UserLAction中checkPhone()方法

  public void checkPhone() throws IOException {    this.getServletResponse().setContentType("text/html; charset=UTF-8");    this.getServletResponse().setHeader("Cache-Control", "no-cache");    PrintWriter out = this.getServletResponse().getWriter();    out.print("true");  }

async: false,(默认是true);

当async: false为同步,这个 test()方法中的Ajax请求将整个浏览器锁死,

只有userL_checkPhone.do执行结束后,才可以执行其它操作。

所以执行结果是先alert('success'); alert('complete'); alert("aa");

当async: true 时,ajax请求是异步的。但是其中有个问题:test()中的ajax请求和其后面的操作是异步执行的,那么当userL_checkPhone.do还未执行完,就可能已经执行了 ajax请求后面的操作,

所以结果是alert('success'); alert('complete'); alert("00");

这样就会发现alert("success")和alert(temp)几乎是同步执行,所以temp就是初始化的值temp = "00",而不是  temp="aa";

以上这篇细数Ajax请求中的async:false和async:true的差异就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

相关文章

Angularjs为ng-click事件传递参数

Angularjs为ng-click事件传递参数

参数,参数传递,事件传递,事件,电脑软件,在angularjs开发中,我们需要为ng-click事件传递一个参数。在js中,可以接到参数:演示:…

详解微信小程序Page中data数据操作

详解微信小程序Page中data数据操作

函数调用,数据操作,详解,程序,电脑软件,微信小程序Page中data数据获取和设置一、Page中data数据的获取和设置: 1、设置data数据 this.setData(object)setData() 参数格式:接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对…

Excel2013怎么批量插入Excel2013批

Excel2013怎么批量插入Excel2013批

批量插入,步骤,方法,插入图片,批量,  有时遇到需要大量在excel中插入图片的情形,比如说为每行职工信息建立一个头像,通过记事本复制一行图片路径的代码,就可以快速达到目标。要怎么实现这操作呢?下面小编就来告诉你吧。Excel2013批量插入图…

PS怎么设计一款指针转动的时钟?

PS怎么设计一款指针转动的时钟?

时钟,指针,电脑软件,PS,PS中想要设计一个动画,就是时钟的指针不停的转动,该怎么制作呢?下面我们就来看看详细的教程。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、首先,新建一个300px*200px的文件。2…

使用JQuery实现轮播效果的实例 |

使用JQuery实现轮播效果的实例 |

推荐,实例,效果,电脑软件,JQuery,【效果如图】【原理简述】这里大概说一下整个流程:1,将除了第一张以外的图片全部隐藏,2,获取第一张图片的alt信息显示在信息栏,并添加点击事件3,为4个按钮添加点击侦听,点击相应的按钮,用fadeOut,fadeIn方法显示图片…

Atom-IDE 的使用方法简单介绍

Atom-IDE 的使用方法简单介绍

使用方法,简单,电脑软件,Atom,IDE,Atom-IDE 的使用方法简单介绍今日,GitHub 宣布与 Facebook 合作推出了 Atom-IDE —— 它包括一系列将类 IDE 功能带到 Atom 的可选工具包。初次发布的版本包括更智能、感知上下文的自动完成;导航功能,如大纲…

excel表格内容错乱怎么办

excel表格内容错乱怎么办

方法,解决方法,序号,表格,内容,  Excel的表格中多数都会有序号,但如果手动输入序号会有几率是混乱的,造成数据的顺序颠倒,要避免这种情况需要用到自动排序,那么具体怎么解决excel 表格序号混乱问题呢,接下来请看本教程吧。Excel表格内容错乱的…

Word中进行设置格式的操作使用

Word中进行设置格式的操作使用

设置,图片格式,操作,操作步骤,格式,  word怎么设置图片格式呢?当我们在word文档资料插一张图片在文字里,在文字不是我们喜欢的设置格式。今天,小编就教大家在Word中进行设置图片格式的操作使用。Word中进行设置图片格式的操作步骤如下图可…

node.js平台下的mysql数据库配置及

node.js平台下的mysql数据库配置及

平台,连接数据库,配置,连接,数据库配置,首先下载mysql模块包npm install mysql --save-dev专门为数据库创建一个模块,放入一个文件中。var mysql=require("mysql");exports.connect=function(sql,param,callback){ var db=mysql.createCo…

jQuery事件_动力节点Java学院整理

jQuery事件_动力节点Java学院整理

事件,学院,节点,动力,电脑软件,因为JavaScript在浏览器中以单线程模式运行,页面加载后,一旦页面上所有的JavaScript代码被执行完后,就只能依赖触发事件来执行JavaScript代码。浏览器在接收到用户的鼠标或键盘输入后,会自动在对应的DOM节点上触…

ps合成的怎么做无缝拼接渐变过渡?

ps合成的怎么做无缝拼接渐变过渡?

渐变,怎么做,电脑软件,ps,将两张图片无缝拼合在一起,并且拼合出有渐变过渡的效果,效果对比如图所示。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、新建画布,把两张照片拖入画布,一张放在上面,一张放下…

ppt2007怎么另存为转成pdf格式

ppt2007怎么另存为转成pdf格式

方法,另存为,转成,格式,电脑软件,  如何将ppt2007转成pdf呢?其实方法很简单在PowerPoint2007任意打开一个PPT文档,然后单击“Office按钮”,选择“另存为”就可以了,不懂的朋友下面小编就为你提供ppt2007如何转成pdf的方…