2-1未封装的Ajax
var app = document.getElementById("app")var url = "http://192.168.4.18:8000";/* ajax 如何使用ajax向后台获取数据 *//* 1.创建ajax核心对象 */var xhr = new XMLHttpRequest()/* 2.与服务器建立连接 xhr.open(method,url,async)请求的方式,地址,是否异步 */xhr.open("get",url,true)/* 3.发送请求 */xhr.send()/* 4.响应 *//* onreadystatechange 监听服务器的响应状态 */xhr.onreadystatechange = function(){/* xhr.status 服务器端响应的状态码 200 *//* xhr.readyState 服务器响应的进度 4 响应已经完成 *//*0:未初始化(Uninitialized)。尚未调用 open()方法。1:已打开(Open)。已调用 open()方法,尚未调用 send()方法。2:已发送(Sent)。已调用 send()方法,尚未收到响应。3:接收中(Receiving)。已经收到部分响应。4:完成(Complete)。已经收到所有响应,可以使用了。*/if(xhr.readyState == 4 && xhr.status ==200){var txt = xhr.responseText/* JSON.parse() 可以将json格式的字符串,转换为json格式的数据 */var obj = JSON.parse(txt)console.log(obj);app.innerHTML = obj.name}}
2-2 JSON.parse( )
可以将json格式的字符串,转换为json格式的数据
JSON.parse( ) // 将json格式的字符串转为json对象JSON.stringify( ) // 将json对象转为json格式的字符串
2-3 封装的ajax
/* 解构,回调函数 */function ajax({url,method,success}){var xhr = new XMLHttpRequest()xhr.open(method,url,true)xhr.send()xhr.onreadystatechange = function(){if(xhr.readyState == 4 && xhr.status == 200){var res = JSON.parse(xhr.responseText)success(res)}}}
<script>var url = "http://192.168.4.18:8000/"ajax({url,method:"get",success:res=>{console.log(res);}})</script>
