在一个循环中有多个相同的XHR,并得到最后一个请求的响应,可以通过以下步骤实现:
以下是一个示例代码:
var xhr = new XMLHttpRequest();
var requestsCount = 5; // 循环次数
var completedRequests = 0; // 已完成的请求数量
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
completedRequests++;
if (completedRequests === requestsCount) {
// 最后一个请求的响应
var response = xhr.responseText;
console.log(response);
}
}
};
for (var i = 0; i < requestsCount; i++) {
xhr.open('GET', 'http://example.com/api', true);
xhr.send();
}
在这个例子中,我们创建了一个XHR对象,并设置了一个循环次数为5。在循环中,我们发送了5个相同的GET请求到'http://example.com/api'。在XHR对象的onreadystatechange事件处理函数中,我们判断了每个请求的readyState和status,当完成的请求数量等于循环次数时,即可确定为最后一个请求,然后获取其响应。
领取专属 10元无门槛券
手把手带您无忧上云