js中同步与异步处理的方法和区别总结


Posted in Javascript onDecember 25, 2013

在使用异步请求时,有时需要将异步请求的结果返回给另一个js函数,此种情况下会出现未等异步请求返回请求结果,该发送请求所在js函数已经执行完后续操作,即已经执行return ,这样会导致return的结果为空字符。

总结:若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求。

例如:以下例子会出现返回结果不正确的情况,因为ajax异步请求还未执行完,函数已经执行return了,

function fn(){ var result = " "; 
$.ajax({ 
url : 'your url', 
data:{name:value}, 
cache : false, 
async : true, 
type : "POST", 
success : function (data){ 
do something.... 
result = .... 
} 
// 对ajax中返回的data进行处理 ,也会出错 
return result ; 
}

1 异步请求方式:
$.ajax({ 
url : 'your url', 
data:{name:value}, 
cache : false, 
async : true, 
type : "POST", 
dataType : 'json/xml/html', 
success : function (result){ 
do something.... 
} 
});

2 同步请求方式
$.ajax({ 
url : 'your url', 
data:{name:value}, 
cache : false, 
async : false, 
type : "POST", 
dataType : 'json/xml/html', 
success : function (result){ 
do something.... 
} 
});
Javascript 相关文章推荐
执行iframe中的javascript方法
Oct 07 Javascript
ExtJS 2.0实用简明教程 之Border区域布局
Apr 29 Javascript
SOSO地图JS画出标注和中心点以html形式运行
Aug 09 Javascript
js导出txt示例代码
Jan 14 Javascript
详谈JavaScript 匿名函数及闭包
Nov 14 Javascript
属于你的jQuery提示框(Tip)插件
Jan 20 Javascript
如何用JS判断两个数字的大小
Jul 21 Javascript
webpack独立打包和缓存处理详解
Apr 03 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 jQuery
vue 中filter的多种用法
Apr 26 Javascript
Vue插槽原理与用法详解
Mar 05 Javascript
关于小程序优化的一些建议(小结)
Dec 10 Javascript
在javascript中实现函数数组的方法
Dec 25 #Javascript
js 时间格式与时间戳的相互转换示例代码
Dec 25 #Javascript
js中for in的用法示例解析
Dec 25 #Javascript
在javascript中执行任意html代码的方法示例解读
Dec 25 #Javascript
jquery easyui combox一些实用的小方法
Dec 25 #Javascript
关闭浏览器时提示onbeforeunload事件
Dec 25 #Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
Dec 25 #Javascript
You might like
星际流派综述
2020/03/04 星际争霸
php xfocus防注入资料
2008/04/27 PHP
php循环检测目录是否存在并创建(循环创建目录)
2011/01/06 PHP
php中将网址转换为超链接的函数
2011/09/02 PHP
PHP中数组定义的几种方法
2013/09/01 PHP
php中字符串和正则表达式详解
2014/10/23 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
JavaScript函数作用域链分析
2015/02/13 Javascript
jQuery使用hide方法隐藏指定元素class样式用法实例
2015/03/30 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
JavaScript观察者模式(经典)
2015/12/09 Javascript
JS+CSS实现闪烁字体效果代码
2016/04/05 Javascript
JS实现动态表格的添加,修改,删除功能(推荐)
2016/06/15 Javascript
简单实现Vue的observer和watcher
2016/12/21 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
2017/08/23 Javascript
简单明了区分escape、encodeURI和encodeURIComponent
2018/05/26 Javascript
Python开发的实用计算器完整实例
2017/05/10 Python
seek引发的python文件读写的问题及解决
2019/07/26 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
HTML5样式控制示例代码
2013/11/27 HTML / CSS
什么是反射
2012/03/17 面试题
模具专业毕业推荐信
2014/03/08 职场文书
保护环境建议书100字
2014/05/13 职场文书
学生安全责任书模板
2014/07/25 职场文书
行风评议整改报告
2014/11/06 职场文书
自愿离婚协议书范本
2015/01/26 职场文书
业务内勤岗位职责
2015/04/13 职场文书
法院答辩状格式
2015/05/22 职场文书
CSS+HTML 实现顶部导航栏功能
2021/08/30 HTML / CSS
python 远程执行命令的详细代码
2022/02/15 Python
JS class语法糖的深入剖析
2022/07/07 Javascript