ajax 同步和异步的区别|已迁移

同步会阻塞后面的代码,也就是说假设这个ajax请求要3 5秒,浏览器就会阻塞住3 5秒不执行后面的,知道等到ajax请求完成。 并且同步不能直接使用jsonp。
异步不能在回调以外直接拿到返回的data,要拿的话自行html


同步须要等待返回结果才能继续,异步没必要等待,通常须要监听异步的结果
同步是在一条直线上的队列,异步不在一个队列上 各走各的jquery

以前一直在写JQUERY代码的时候遇到AJAX加载数据都须要考虑代码运行顺序问题。最近的项目用了到AJAX同步。这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里全部的代码中止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其余代码页面假死状态解除。 
而异步则这个AJAX代码运行中的时候其余代码同样能够运行。 
jquery的async:false,这个属性 
默认是true:异步,false:同步。
$.ajax({ 
        type: "post", 
       url: "path", 
       cache:false, 
       async:false, 
        dataType: ($.browser.msie) ? "text" : "xml", 
         success: function(xmlobj){ 
        } 
});
有了这个属性能够相对的减小代码运行书序问题,可是若是用的太多,页面假死次数太多。这样反而致使用户体验不佳~!


文章转自 连接一  连接二ajax

相关文章
相关标签/搜索