Promise怎么跳出then到最后的finally
答案:1 悬赏:50 手机版
解决时间 2021-11-22 01:24
- 提问者网友:心牵心
- 2021-11-21 04:18
Promise怎么跳出then到最后的finally
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-11-21 04:27
var fn = (num) => {
return Promise.resolve().then(() => {
if (num >= 0) {
return Promise.resolve(num);
} else {
return Promise.reject(num);
}
}).then((value) => {
return value + 1;
}).then((value) => {
return value * 2;
}).catch((value) => {
if (value < -100) {
return Promise.reject(value); // 继续返回 reject 状态
} else {
return value * value; // 继续返回 resolve 状态
}
}).then((value) => {
console.log(`num = ${num}, value = ${value}.`);
});
};
fn(10);
fn(-10);
执行结果
num = 10, value = 22.
num = -10, value = 100.
return Promise.resolve().then(() => {
if (num >= 0) {
return Promise.resolve(num);
} else {
return Promise.reject(num);
}
}).then((value) => {
return value + 1;
}).then((value) => {
return value * 2;
}).catch((value) => {
if (value < -100) {
return Promise.reject(value); // 继续返回 reject 状态
} else {
return value * value; // 继续返回 resolve 状态
}
}).then((value) => {
console.log(`num = ${num}, value = ${value}.`);
});
};
fn(10);
fn(-10);
执行结果
num = 10, value = 22.
num = -10, value = 100.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯