以下是个人理解,一般公司前端面试的时候都会或多或少提到ajax的问题,所以在此总结一下。
AJAX即“AsynchronousJavascriptAndXML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
首先澄清一点,AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术,所以简单的回答jquery的ajax或者axios这种都是不正确的。
使用Javascript向服务器提出请求并处理响应而不阻塞用户!使用的核心对象是XMLHTTPRequest。通过这个对象,您的 JavaScript 可在不重载页面的情况与Web服务器交换数据,即在不需要刷新页面的情况下,就可以产生局部刷新的效果。
所以目前ajax的核心传输对象有两种,一种是XMLHTTPRequest,另外一种是fetch。
而jquery带的ajax封装是在XMLHTTPRequest的基础上封装的抽象方法便于开发者使用,同理其他的ajax框架例如axios,superagent等等都是基于最基础的XMLHTTPRequest或者fetch开发的框架。
以上是对ajax的一些总结,有不同的理解欢迎讨论