Promise:是异步编程的一种解决方案,有了Promise对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数。此外,Promise对象提供统一的接口,使得控制异步操作更加容易。
参数:两个resolve和reject
resolve:将promise对象从“未完成”变为“成功”
reject:将promise对象从“未完成”变为“失败”
promise.then(function(value) {
// success
}, function(error) {
// failure
});
then方法:是为 Promise 实例添加状态改变时的回调函数。
可以接受两个回调函数作为参数。第一个回调函数是Promise对象的状态变为resolved时调用,第二个回调函数是Promise对象的状态变为rejected时调用。其中,第二个函数是可选的。
promise对象失败时的解决方法:
1.使用catch(推荐):
如下代码:当promise对象发生错误时,输出 :catch the reject
promise.then(function(posts) {
// ...
}).catch(function(error) {
// 处理 getJSON 和 前一个回调函数运行时发生的错误
console.log('发生错误!', error);
});
2.Promise对象的第二个参数(回调函数):
如下代码:当promise对象发生错误时,输出:“error”
promise.then(function(value) {
console.log('succeed')
}, function(error) {
console.log('error')
});
本文深入解析Promise对象,一种用于异步编程的解决方案。通过Promise,异步操作可采用类似同步流程的方式表达,简化了回调函数的嵌套问题。文章详细介绍了Promise的resolve和reject方法,以及如何使用then和catch方法处理状态变化。
573

被折叠的 条评论
为什么被折叠?



