发表于: 2021-05-15 23:39:24
1 1780
今天完成的事情:JS Ajax的了解使用;异步编程
明天计划的事情:学习资料:HTTP协议;nginx 反向代理 垮域;Ajax
遇到的问题:HTTP协议没看懂;进行与后端交汇方法完全有点懵,具体还不知道怎么下手。
收获:
AJAX 为 JavaScript 脚本发起 HTTP 通信的代名词,只要用脚本发起通信,就可以叫做 AJAX 通信。
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。
AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
AJAX 包括以下几个步骤:
创建 XMLHttpRequest 实例
发出 HTTP 请求
接收服务器传回的数据
更新网页数据
AJAX 通过原生的XMLHttpRequest
对象发出 HTTP 请求,得到服务器返回的数据后,再进行处理。服务器返回的都是 JSON 格式的数据。XMLHttpRequest
对象是 AJAX 的主要接口,用于浏览器与服务器之间的通信。尽管名字里面有XML
和Http
,它实际上可以使用多种协议(比如file
或ftp
),发送任何格式的数据(包括字符串和二进制)。XMLHttpRequest是一个构造函数,可以使用new
命令生成实例。它没有任何参数。
xhr.open('GET', 'http://www.example.com/page.php', true);
上面代码向指定的服务器网址,发出 GET 请求。然后,指定回调函数,监听通信状态(readyState
属性)的变化。
XMLHttpRequest对象简单用法例子:
异步的概念:
异步(Asynchronous, async)是与同步(Synchronous, sync)相对的概念。
传统单线程编程中,程序的运行是同步的(同步不意味着所有步骤同时运行,而是指步骤在一个控制流序列中按顺序执行)。
而异步的概念则是不保证同步的概念,也就是说,一个异步过程的执行将不再与原有的序列有顺序关系。
简单来理解就是:同步按你的代码顺序执行,异步不按照代码顺序执行,异步的执行效率更高。
评论