>

同步请求方式 复制代码澳门博发娱乐官网: 代码

- 编辑:澳门博发娱乐官网 -

同步请求方式 复制代码澳门博发娱乐官网: 代码

在使用异步请求时,有时需要将异步请求的结果返回给另一个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 { 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 { do something.... } }); 2 同步请求方式 复制代码 代码如下: $.ajax({ url : 'your url', data:{name:value}, cache : false, async : false, type : "POST", dataType : 'json/xml/html', success : function { do something.... } });

同步:提交后等待服务器的响应,接收服务器返回的数据后再执行下面的代码   
异步:与上面相反,提交后继续执行下面的代码,而在后台继续监听,服务器响应后有程序做相应处理,异步的操作好处是不必等待服务器而可以继续在客户端做其它事情。

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

 若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求,下面为大家介绍下js中同步与异步处理的方法和区别,感兴趣的朋友不要错过

在使用异步请求时,有时需要将异步请求的结果返回给另一个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.... 

}); 

 

若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求,下面为大家介绍下js中同步与异...

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

可以简单的理解认为同步是单线程的异步是多线程的          

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

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

本文由胜博发-运维发布,转载请注明来源:同步请求方式 复制代码澳门博发娱乐官网: 代码