AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。
AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。、
Ajax三三步骤:创建请求,发送请求,服务器响应
function ajax(url, callback) {
//创建 XMLHttpRequest 对象
var xhr
if (window.XMLHttpRequest) {
// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
xhr = new XMLHttpRequest();
}
else {
// IE6, IE5 浏览器执行代码
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
// 向服务器发送请求
xhr.open('GET', url, true)
xhr.send()
// 服务器 响应
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var obj = JSON.parse(xhr.responseText)
callback(obj)
}
}
}
Callback Hell
为了让异步程序按顺序执行,会采用回调地狱的方式。但这种模式不易维护,可读性差。
ajax('static/a.json', res => {
console.log(res)
ajax('static/b.json', res => {
console.log(res)
ajax('static/c.json', res => {
console.log(res)
})
})
})