• Ajax—初识


        看DRP的过程。又一次学习了一遍Ajax。更深刻的体会到了Ajax所具有的魅力。Ajax是一种技术或者方法,更是一


    种艺术。它让我们的程序以一种更完美的姿态呈如今用户面前。以下就让我们一起走进Ajax的世界。


    简单介绍


    全名:


        AsynchronousJavaScript and XML。


    工作原理:


          Ajax的工作原理相当于在用户和server之间加了—个中间层(AJAX引擎),使用户操作与server响应异步化。并不

    是全部的用户请求都提交给server,像—些数据验证和数据处理等都交给Ajax引擎自己来做,仅仅有确定须要从server读

    取新数据时再由Ajax引擎代为向server提交请求。

        通过XmlHttpRequest对象来向server发异步请求,从server获得数据,然后用JavaScript来操作DOM而更新

    页面。


    核心技术:


        异步


    主要成员:


          JavaScriptXMLHTTPRequestDOM


    应用:


        新浪微博、Google地图等


    同步与异步

        

        提到Ajax。必定会提到同步和异步。


        同步:能够理解为单线程,也能够理解为“死心眼”。

    也就是在运行完一个函数或方法之后,一直等待系统返回

    值或消息,这时程序是出于堵塞的,仅仅有接收到返回的值或消息后才往下运行其它的命令。


       异步:能够理解为多线程(异步肯定是多线程)。

    运行完函数或方法后。不必堵塞性地等待返回值或消息。仅仅需

    要向系统托付一个异步过程。那么当系统接收到返回值或消息时。系统会自己主动触发托付的异步过程,从而完毕一个完

    整的流程。  

        

        还不懂?同步就是你叫我去吃饭,我听到了就和你去吃饭;假设没有听到,你就不停的叫。直到我告诉你听到

    了。才一起去吃饭。

    异步就是你叫我。然后自己去吃饭,我得到消息后可能马上走,也可能等到下班才去吃饭。

    以。要我请你吃饭就用同步的方法,要请我吃饭就用异步的方法。这样你能够省钱。

        

        而我们的Ajax仅仅要就应用了异步。来展现自己的魅力,提高用户的体验度。讲到这里就不得不提Ajax的核心对象

    XMLHttpRequest。正是它的存在才干够让Ajax向世人展现它强大的功能。

     

    XMLHttpRequest介绍


    这里不具体介绍XMLHttpRequest的属性和方法。我们大致说一下XMLHttpRequest的工作过程:

    1. 为得到XMLHttpRequest对象实例的一个引用。能够创建一个新的实例,也能够訪问包括有XMLHttpRequest实例的一个变量。

       

    2. 告诉XMLHttpRequest对象。哪个函数会处理XMLHttpRequest对象状态的改变,为此要把对象onreadystatechange属性设置为指向JavaScript函数的指针。 
    3. 指定请求的属性。

      XMLHttpRequest对象的open()方法会指定将发出的请求。

      open()方法取3个參数:一个是指示所用方法(一般是GET或POST)的串。一个是表示目标资源URL的串。一个是Boolean值。指示请求是否是异步的。

       

    4. 将请求发送给server。

      XMLHttpRequest对象的send()方法把请求发送到指定的目标资源。

      send()方法接受一个參数,一般是一个串或一个DOM对象。这个參数作为请求体的一部分发送到目标URL。当向send()方法提供參数时,要确保open()中指定的方法是POST。假设没有数据作为请求体的一部分被发送。则使用null。

       

        这些步骤非常直观:你须要XMLHttpRequest对象的一个实例,要告诉它假设状态有变化该怎么做,还要告诉它向哪

    里发送请求以及怎样发送请求,最后还须要指导XMLHttpRequest发送请求。

    再简单点就是:创建出一个实例。告诉他

    他须要做什么。为谁服务。


    优缺点

        

    不论什么一件艺术品都有不是完美的,Ajax也一样。自从Ajax出现之后,对它的讨论就没有停止过。

    长处显而易见:

    1. 局部刷新页面,降低用户心理和实际的等待时间,带来更好的用户体验
    2. 减轻server的负担,按需取数据,最大程度的降低冗余请求
    3. 基于xml标准化,并被广泛支持,不需安装插件等
    4. 进一步促进页面和数据的分离

     

    但它的缺点也非常明显,有人总结出Ajax“七宗罪”。这里我们就不具体说了,我大致总结一下它的缺点:

    1. ajax干掉了backbutton,即对浏览器后退机制的破坏。
    2. 对搜索引擎的支持比較弱。
    3. 破坏异常处理机制

    总结:

        这是一篇帮助大家了解Ajax的文章。没有太多具体的技术解说,Ajax是一门非常有用的技术。它能够非常好的提高

    客户的体验度。但它也不是完美的,非常多场景下并不适合使用它,比方:须要替换大量文本的情况下。

     

  • 相关阅读:
    洛谷P1272 重建道路
    uva 10004
    uva10305
    uva 10044
    uva 120
    uva699
    uva297
    uva11111
    uva 101
    uva10152 ShellSort
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5072285.html
Copyright © 2020-2023  润新知