ajax在项目当中是当作异步传输模式来做的,异步传输是相对于同步来说的,当我们按F5刷新一个页面时,那么整个页面在浏览器当中所有的数据都会刷一次,但是如果当页面上有某一块的数据需要变更时,那么在这个时候调用ajax,ajax会刷新这一部分数据而不用刷新整个页面,这就是异步传输。
对于我们实现ajax来说,一般分为这么几种情况,
第一种是原生ajax,
第二种jQuery简化后的ajax。
原生ajax的使用情况是这样的:
首先创建ajax的对象这个时候需要考虑兼容性,
然后调用open()方法打开ajax的链接,里面写请
求数据的方式get/post、请求的路径、true/false是否异步,链接建立后,服务器开始执行,
调用send()方法来发送请求,
在这个过程中需要调用一个监听事件onreadyStateChange,在监听的过程中,有5个状态值(readyState)需要注意,当状态值为4的时候表示执行完毕,当状态码(status)为200的时候表示执行成功,然后把请求的数据输出(responseText()),
然后再进行遍历,执行页面的操作,这就是原生的ajax。
jQuery简化后的ajax,
$.ajax调用的时候里面有几个重要的参数:
type、url、dataType、success、error。
这些参数对应的就是原生ajax的那些值
ajax的优点:
1、实现了异步传输,带来了更好的用户体验;
2、ajax占用的空余时间较少,ajax能够实现及时通讯系统,开创了调用其他接口方便的先河;
ajax的缺点:
1、由于ajax局部刷新数据,使服务器在频繁的处理请求中速度变慢;
2、使用ajax缓存严重,导致数据不同步;
综上所述,就是我对ajax的理解。