promise chain にすべきか async await にすべきか。。。
Discussion
Closed
解決したいこと
前の promise の結果に依存する後続の promise 実行する場合、どのように実装するのが良いでしょうか?
例)
const promiseA = (): Promise<string> => {
return new Promise((resolve) => {
resolve('A')
});
}
const promiseB = (param: string): Promise<string> => {
return new Promise((resolve) => {
resolve(`${param} だったよ`)
});
}
という promise があった時
// promise chain を使うパターン
const doPromiseChain = () => {
return promiseA().then((result) => {
return promiseB(result)
})
}
console.log(doPromiseChain()) // A だったよ
とすべきか、
// async/await を使うパターン
const doPromiseAwait = async () => {
const resultA = await promiseA()
const resultB = await promiseB(resultA)
return resultB
}
console.log(doPromiseAwait()) // A だったよ
とすべきか悩んでいます
promiseA()
と promiseB()
がお互いに依存しない場合は async/await にするのが良いと思いますが、promiseA()
の結果を待って promiseB()
を実行するのであれば、promise chain にしたほうが見やすいのかなと...
みなさまのご意見を伺いたいです