1月29日(木)1コマ目

今日、やったこと

JavaScriptの同期・非同期処理

今日のホワイトボード

サンプル

以前作成したサンプル(書籍情報)に以下を追加。

test.htmlを表示すると、ID=1の書籍を検索して、表示する。

test.html


test.js


test.htmlを表示すると、以下のようになる。

図 サンプル表示結果


fetch()関数は

fetch()関数は非同期処理。

サーバーにリクエストを送信後、レスポンスを待たずに次の処理を行う。

test.jsのgetBook()関数は以下のように、①->②->③->④の順に動く。

図 fetch()関数は非同期処理


レスポンスを受け取るまで待つ

fetch()関数がリクエストを送信後、レスポンスを受け取るまで次の処理を行わないようにしたい。

キーワード await をつけると、非同期処理->同期処理になる。

キーワードawaitを含む関数には、キーワードasyncを付与する。

test.js


表示すると、下図のようにちゃんと結果が表示される。

図 非同期処理->同期処理 表示結果


非同期処理のままで動くようにしたい

レスポンスを受け取ったタイミングで表示すればいい。

test.js


これでもちゃんと結果が表示される。

図 非同期処理改造版 表示結果


次回は

評価用課題をまた作ってもらいます。


このブログの人気の投稿

1月15日(木)1コマ目

10月30日(木)1コマ目

12月4日(木)1コマ目