减少压痕
承诺:
function doTheThing() {
return doOneThing()
.then(doAnother)
.then(doSomeMore)
.catch(handleErrors)
}
使用异步功能:
async function doTheThing() {
try {
const one = await doOneThing();
const another = await doAnother(one);
return await doSomeMore(another);
} catch (err) {
handleErrors(err);
}
}
请注意返回值是在底部,而不是在顶部,并且你使用语言的本机错误处理机制(try/catch
)。