backend(mBaaS)。Node.js先日、スクリプト機能がバージョンアップしてNode.jsが8.11.3を選択できるようになりました。この8系以降の特徴として、async/awaitに対応したという点があります。async/awaitはJavaScriptの非同期処理を同期処理のように書ける記法になります。コールバックやPromiseで苦しんだ経験のある方はぜひasync/awaitを使ってみてください。今回はこのasync/awaitの書き方を解説します。関数名の頭にasyncを付けるコールバックでは使えませんループ処理に注意しましょうまとめ関数名の頭にasyncを付けるまずasync/awaitに対応させるために、関数の頭にasyncと書かなければなりません。これは関数、クラスのメソッドでも同じです。}}そして、そのasyncと書かれた処理内ではawaitで非同期処理を扱えるようになります。具体的にはPromise処理が対象になります。Hello();}main();なお、Promise処理における失敗時のrejectを呼ぶと、async側ではエラー処理になります。そのため、全体をtry/catchで囲む必要があります。}}mainのような変数を作るのは面倒なので、無名関数で囲むこともできます。}})();コールバックでは使えません従来のコールバック関数の場合、await/asyncでは使えませんので、Promiseで囲む必要があります。これは標準で用意されているユーティリティです。}})();ループ処理に注意しましょうasync/awaitでのループ処理は推奨されていません。この場合は一旦配列にまとめるのが良いようです。以下は推奨されない方法です。}})();これを以下のようにします。個別の処理結果を受けて次の処理に繋ぐ場合など、ループ処理内でawaitを使わざるをえないケースもあるでしょう。}})();まとめasync/awaitを使いこなすことで、Promiseでは面倒だった書き方がすっきりします。asyncを忘れるとエラーになったり、awaitを忘れてPromiseで返ってきてしまうこともありますが、それは書いている内に慣れることでしょう。積極的に使ってみてください。篤司NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。SDKとPromiseライブラリHydraを組み合わせるSwiftでは非同期処理が多用されます。Service)とは、スマートフォンアプリでよく利用される汎用的な機能をSDKとクラウドから提供するサービスです。backendのちょっと便利な使いかた・非公式SDKやアプリ開発の関連情報などをお届けするブログです。※記事内には、サポート対象外の内容も含みます。本ブログではコメント機能を公開しておりません。アプリ開発を行う上での課題解決には、ユーザーコミュニティやもくもく会などもご活用ください。LIMITEDスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。