XMLHttpRequest.prototype.readyState

readyState表示当前XMLHttpRequest实例的状态。根据这个状态可以判断当前Ajax请求的生命周期节点。

readyState是一个只读属性。

readyState有五中状态表示:

状态值 描述
0 请求未初始化。此时还没调用实例的open()方法。等价于XMLHttpRequest.prototype.UNSENT
1 请求HTTP已创建,即已调用了open()方法,但未发送该HTTP请求。等价于XMLHttpRequest.prototype.OPENED
2 send()方法已经被调用,并且HTTP响应首部字段和状态已经获得。等价于XMLHttpRequest.prototype.HEADERS_RECEIVED
3 已接收到部分HTTP响应体数据,但未完成接收。此时实例的responseText属性值已存在。等价于XMLHttpRequest.prototype.LOADING
4 HTTP响应结束,无论本次请求是成功还是失败。等价于XMLHttpRequest.prototype.DONE

语法

xhrInstance.readyState

返回值

返回一个取值范围0 - 4的整数。

readyState使用示例

var xhr= new XMLHttpRequest(),
    method = "GET",
    url = "/example.org";

xhr.onreadystatechange = function () {
  if(xhr.readyState === 4 && xhr.status === 200) {
    console.log(xhr.responseText)
  }
};

xhr.open(method, url, true);
xhr.send();

相关链接