AJAX_01_AJAX基础

AJAX基础

  • 什么是AJAX?

    • Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

    • AJAX不是一个技术,二十多个技术的联合产物。

    • AJAX是浏览器客户端上的前端技术,只要是web开发,不管服务器端的编程语言是哪一种,AJAX都是很重要的。

  • 异步和同步有什么区别?

    • 异步:A线程和B线程并发执行谁也不等待谁

    • 同步:当A线程执行的时候B线程需要等待,当B线程执行的时候A线程也需要等待,这就是同步

    • 使用AJAX可以做到异步

  • 浏览器本身也是支持多线程并发的,其中ajax就是一个线程,一个页面上可以同时发送多个AJAX请求。

  • 使用传统的请求方式,请求只能发送一次,当一次请求发送,整个浏览器页面被锁住,无法点击其他按钮发送其他请求,浏览器会将本页面的全部数据清空,迎接新的页面。

  • AJAX主要解决的就是页面的局部刷新,使用AJAX可以在同一个网页中发送多个请求,每个请求之间互不干扰,以提高用户的体验。

  • 核心对象 XMLHttpRequest对象

    • 当需要异步与服务器交换数据时,需要XMLHttpRequest对象来异步交换。

    • 发送AJAX请求全靠浏览器内置对象XmlHttpRequest,使用XmlHttpRequest对象可以在浏览器中单独启动一个浏览器线程,通过浏览器线程发送该请从而达到异步效果。

    • XMLHttpRequest对象的主要属性有:

      • onreadystatechange —— readystate属性值每改变一次,就会触发一次事件处理程序。

      • responseText —— 从服务器进程返回数据的字符串形式。

      • responseXML —— 从服务器进程返回的DOM兼容的文档数据对象。

      • status —— 从服务器返回的数字代码,如404(未找到) 和 200(已就绪)。

      • status Text —— 伴随状态码的字符串信息。

      • readyState —— 对象状态值。对象状态值有以下几个:

                                     0 - (未初始化)还没有调用send()方法
        
                                     1 - (载入)已调用send()方法,正在发送请求
        
                                     2 - (载入完成)send()方法执行完成
        
                                     3 - (交互)正在解析响应内容
        
                                     4 - (完成)响应内容解析完成,可以在客户端调用了
        
posted @ 2021-04-29 18:19  失昼  阅读(52)  评论(0)    收藏  举报