多重promise(串行)
let test = function() {
return new Promise(function(resolve, reject){
setTimeout(function(){
resolve();
}, 2000);
})
}
test().then(function() {
console.log('测试 resolve')
})
test().then(function(){
return new Promise(function(resolve, reject){
setTimeout(function(){
resolve()
}, 2000);
})
}).then(function(){
console.log('多重promise')
})
输出的结果
node .\promis-test.js
测试 resolve
多重promise
promise中的catch
// 可以抛出一个错误,然后用promise中的catch接住
// promise 中的 catch 用于捕获异常
let test = function(num) {
return new Promise(function(resolve, rejcet){
if (num > 5) {
resolve();
} else {
// 抛出一个错误
throw new Error;
}
})
}
test(3).then(function() {
console.log('resolve 正常');
}).catch(function(error) {
console.log('捕获异常', error);
})
网友评论