三者都用于网络请求,但是维度不同。
- Ajax(Asynchronous JavaScript and xml),一种技术统称
2.Fetch,一个具体的API
3.Axios.第三方库:https://axios-http.com/
用XMLHttpRequest()实现Ajax
function ajax(url, successFn) {
const xhr = new XMLHttpRequest()
xhr.open('GET', url, false)
xhr.onreadystatechange = function () {
//这里的函数异步执行
if (xhr.readyState == 4) {
if (xhr.status == 200) {
successFn(xhr.statusText)
}
}
}
xhr.send(null)
}
Fetch
- 浏览器原生生API,用于网络请求。
- 和
XMLHttpRequest
yige一个级别。
- Fetch 语法更简洁,易用,支持
promise
function fetchAjax(url) {
return fetch(url).then(res => res.json())
}
Axios
- 最常用的网络请求lib(随着vue的火爆起来)
- 内部可用
XMLHttpRequest
和fetch
来实现
- Axios ,第三方库