ajax

作者: 要非常直接的看待自己 | 来源:发表于2018-06-23 17:19 被阅读0次

     先简单介绍一下,无论我们使用哪种语言开发,我们都可能会使用到jquery中ajax方法,主要应用于网页的动态刷新(局部刷新)。这里先简单阐述:每当我们浏览网页的时候,该网页由很多部分组成,而起初我们的网页是在我们访问url时一次性加载,然而在该页面中很多地方的数据都是动态、实时变化的,ajax在其中扮演着“隐藏者”的身份,不知不觉在后台执行请求,将数据呈现,形成局部刷新,从而不需要重新加载或刷新整个页面,对用户而言是一种很好的体验。

    回归正题,介绍一下ajax的常用方法:

    $.ajax({

             type:'post || get',

             url:'',请求url

             data:'',//请求参数

             dataType:'json',//这里我经常用到的是json数据类型

             async:false || true,//默认是true异步,false同步

             success:function(data){

             },

            .......

    });

    在谈到ajax时,同步和异步是必不可少的。

    async:false  同步:当js代码加载运行到ajax同步代码块,会把当前界面中所有代码停止运行,页面会出现假死状态,只有当这个ajax执行完毕之后才会继续运行其它的代码,页面的假死状态解除。

    async:true   异步:异步相对于同步,执行到该ajax代码的时候,不会影响其它代码运行。

    ps:$.post(),$.get()已经封装过,没有ajax灵活。推荐使用$.ajax();这里用代码解释一下:

               ajax---> ······ success:function(data){ first方法()};two方法()

    同步是在first方法执行完后,再执行two方法;而异步无需等到first方法执行完,two方法会独立执行,这里相当于两个线程,这样就更好理解了,分别执行不同的功能,无需等待。

    这里结合一下之前开发遇到的问题:

    在日常使用ajax的时候,通常都是异步请求,如何把通过ajax方法获得的数据传到ajax函数外?1、通过定义全局变量    2、改成async:false

    最后简单说一下:同步可以相对减少代码运行的顺序问题,但如果使用过多,页面假死次数太多会极大程度的影响用户体验,所以很多人会说“ajax用同步就没有意义了”,这个地方我希望大家根据自己的需求,用合适的方式处理ajax的同步与异步的运用!!!

    这是简书的第一篇文章,送给我亲爱的老婆yy,希望我们共同进步,努力向前!!!

    相关文章

      网友评论

          本文标题:ajax

          本文链接:https://www.haomeiwen.com/subject/yazryftx.html