温馨提示:这篇文章已超过182天没有更新,请注意相关的内容是否还可用!
1、在Ajax中,then()方法是Promise对象的一个方法,用于指定当Promise对象状态变为resolved(已完成)时要执行的回调函数。then()方法接受两个参数:一个是当Promise对象状态变为resolved时要执行的回调函数,另一个是当Promise对象状态变为rejected(已拒绝)时要执行的回调函数。
示例代码如下:
// 创建一个Promise对象
const promise = new Promise((resolve, reject) => {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data');
xhr.onload = function() {
if (xhr.status === 200) {
resolve(xhr.responseText);
} else {
reject(xhr.statusText);
}
};
xhr.onerror = function() {
reject('Network Error');
};
xhr.send();
});
// 使用then()方法指定回调函数
promise.then(
function(response) {
console.log('请求成功:' + response);
},
function(error) {
console.log('请求失败:' + error);
}
);
在上面的示例代码中,首先创建了一个Promise对象,通过XMLHttpRequest发起一个GET请求获取数据。当请求成功时,调用resolve()方法将响应数据传递给then()方法的第一个回调函数;当请求失败时,调用reject()方法将错误信息传递给then()方法的第二个回调函数。
然后使用then()方法来指定当Promise对象状态变为resolved时要执行的回调函数和当Promise对象状态变为rejected时要执行的回调函数。在这个示例中,当请求成功时,会在控制台输出"请求成功:"加上响应数据;当请求失败时,会在控制台输出"请求失败:"加上错误信息。
通过使用then()方法,我们可以对Ajax请求的结果进行处理,根据请求的状态来执行相应的操作。