JS中的promise返回的resolve()和reject()的理解附代码展示

发布时间 2023-04-27 11:27:21作者: webBig税

在JavaScript中,Promise是一种处理异步操作的方式。Promise对象有两个重要的方法:resolve()和reject()。

resolve()方法用于将Promise对象的状态从“未完成”变为“成功”,并将成功的结果作为参数传递给then()方法。例如:

let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('Success!');
}, 1000);
});

promise.then(function(result) {
console.log(result); // Success!
});

在上面的例子中,Promise对象在1秒后成功,并将字符串“Success!”作为参数传递给then()方法。

reject()方法用于将Promise对象的状态从“未完成”变为“失败”,并将失败的原因作为参数传递给catch()方法。例如:

let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
reject(new Error('Something went wrong!'));
}, 1000);
});

promise.catch(function(error) {
console.log(error); // Error: Something went wrong!
});

在上面的例子中,Promise对象在1秒后失败,并将一个Error对象作为参数传递给catch()方法。

总之,Promise对象的resolve()和reject()方法可以用于控制Promise对象的状态,并将成功或失败的结果传递给then()或catch()方法。