三者都用于网络请求,但是不同纬度
- Ajax,一种技术统称
function ajax1(url,successFn){
const xhr = new XMLHttpRequest()
xhr.open("GET",url,false)
xhr.onreadystatechange = function(){
if(xhr.readyState == 4){
if(xhr.status == 200){
successFn(xhr.reponseText)
}
}
}
xhr.send(null)
}
function ajax2(url){
return fetch(url).then( res => res.json())
}
- Fetch,一个具体的API
- 浏览器原生API,用于网络请求
- 和XMLHttpRequest一个级别
- Fetch语法更加简洁、易用、支持Promise
- axios,第三方库
- 最常用的网络请求lib(随着Vue火爆起来)
- 内部可用XMLHttpRequest和Fetch来实现
- Axios,第三方库 www.npmjs.com/package/axi…
lib和API的区别
- 第三方库和原生方法
- 实际项目中,使用现成的lib,尽量不要自己造轮子
- 但读源码、造轮子是很好的个人学习方式