JavaScriptで非同期通信する際のawaitの使い方について

実現したいこと

awaitを使って3つの処理を順番に(直列で)実行するようにしたいです。
前提として以下の2つのファイルがある状況です。

customize.js:他の人が手を加えられるjs
base.js:他の人が手を加えられないjs

通常は以下のように非同期の関数をawait func2()として呼び出すかと思うのですが

customize.js

$(async function () { func1(); await func2(); func3(); })

base.js

//処理1 const func1 = () => { //1の処理 } //処理2 const func2 = () => { return new Promise((resolve, reject) => { //ajaxの処理 }) } //処理3 const func3 = () => { //3の処理 }

以下のように定義した関数の中にacincとawaitをつけた場合は直列処理にならないでしょうか?

customize.js

$(function () { func1(); func2(); func3(); })

base.js

//処理1 const func1 = () => { //1の処理 } //処理2 export const func2 = async () => { await new Promise((resolve, reject) => { //ajaxの処理 }) } //処理3 const func3 = () => { //3の処理 }

目的

・customize.jsはjsに詳しくない人も触れる前提なので、可能な限りシンプルにしたいです。
・customize.jsのasyncやawaitを間違えて削除した際にバグに繋がる可能性があるため、リスクヘッジとしてbase.jsに記述したいです。

よろしくお願いします。

コメントを投稿

0 コメント