JavaScriptをブラウザで実行させるときに、その中で非同期関数をそのまま実行させたい場合がある。
その場合の実装方法についてまとめていく。
即時関数を使おう
答えとしては単純で、即時関数を使おう
即時関数(正式には即時実行関数式と言う)については下記サイトが詳しい
IIFE (即時実行関数式) - MDN Web Docs 用語集: ウェブ関連用語の定義 | MDN
IIFE (Immediately Invoked Function Expression; 即時実行関数式) は定義されるとすぐに実行される JavaScript の関数です。
簡単に言うと、実行するjsを下記のような関数でくくってしまえばいい。
(async () => {
//実行したいjsをここに
})();
こうするとawaitも中で使うことができる。
その他の即時関数が使えるパターン
その他で便利なのは、GTMでJavaScriptを埋め込む場合である。
もちろん使わない場合が大半なのだが、例えば特定の条件で途中で処理を止める場合に役立つ
例えば、、
(() => {
if(hogehoge){
return;
}
//hogehogeがtrueなら、ここからは実行されない
})();
こんな具合です。