zoukankan      html  css  js  c++  java
  • ajax同步与异步的坑

     
    之前工作中一个需求,需要动态的添加一组下拉菜单并为这个菜单绑定一个插件,很明显获取数据用Ajax,这本身是没错的,坑就坑在我用了 同步请求,当服务器端正确返回数据时再去执行下一个方法,这逻辑本身没有问题。所以当我写完之后,我发现页面加载速度及其的慢,我删除了一些多余的和http请求,仍然不能解决这个问题,然后我突然想到了Ajax同步和异步的问题,改成异步之后页面数据加载就快了很多,希望能正确的使用同步和异步。
     
    在Jquery中ajax方法中async用于控制同步和异步,当async值为true时是异步请求,当async值为fase时是同步请求。ajax中async这个属性,用于控制请求数据的方式,默认是true,即默认以异步的方式请求数据。
     
    1、async值为true (异步)
    当ajax发送请求后,在等待server端返回的这个过程中,前台会继续 执行ajax块后面的代码,直到server端返回正确的结果才会再去执行success,也就是说这时候执行的是两个线程,ajax块发出请求后一个线程 和ajax块后面的脚本(另一个线程)
     
    2、async值为false (同步)
    Ajax发出请求之后在等server端返回的过程中不会再执行任何代码,暂停在当前的请求中,直到server端正确返回数据之后,会先执行Ajax中success的回调方法,回调执行完成之后才会继续执行余下的代码。
     
  • 相关阅读:
    空间分析之距离分析(转)
    空间分析之常用工具(转)
    空间分析之表面分析(转)
    关于高斯克吕格平面直角坐标系(转)
    空间分析之水文分析(转)
    空间分析之区域分析(转载)
    Cass和ArcGIS交换
    0x80029C4A
    delete
    中国期货业协会会员,2016年期货公司分类评级结果
  • 原文地址:https://www.cnblogs.com/xieyao/p/8467920.html
Copyright © 2011-2022 走看看