js原生ajax写法

let 创建的变量不可以再次被定义
var 创建的变量可以被重新定义
建立ajax对象

var ajax = new XMLHttpRequest()
xhr.onreadystatechange=function(){
    var readystate= xhr.readyState
    switch(readystate){
        case 0: consloe.log('创建好了ajax对象');break;
        case 1: consloe.log('调取了open方法');break;
        case 2: consloe.log('调用了send方法');break;
        case 3: consloe.log('响应体部分正在被接受');break;
        case 4: consloe.log('请求完成');break;
    }
}
ajax.open('get','/tajx')
var data = 'hello'
ajax.send(data)
var ajax = new XMLHttpRequest()
xhr.timeout = 2000
xhr.ontimeout = function(){
      xhr.abort()
      console.log('服务器在2秒内没有反应,请求被取消')
}
xhr.onprogress = function(event){
    console.log(event.loaded) #已经发送的数据量
    console.log(event.total) #总共要发送的量
    console.logn(event.loaded/event.total*100 + '%')  #百分比
}
xhr.onreadystatechange=function(){
    var readystate= xhr.readyState
    switch(readystate){
        case 0: consloe.log('创建好了ajax对象');break;
        case 1: consloe.log('调取了open方法');break;
        case 2: consloe.log('调用了send方法');break;
        case 3: consloe.log('响应体部分正在被接受');break;
        case 4: {
               console.log('请求已经完成');
               console.log('response',xhr.response);
               console.log('responseText',xhr.resopnseText);
               console.log('responseType',xhr.resopnseType);
               console.log('status',xhr.staus);
               console.log('statusText',xhr.stausText);        

        }
    }
}
ajax.open('get','/tajx')
var data = 'hello'
ajax.send(data)



onprogrees #绑定回调函数

你可能感兴趣的:(javascript)