teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

よりわかりやすく

2018/07/19 04:32

投稿

maisumakun
maisumakun

スコア146659

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  `async`付きの関数は、本質的には**`Promise`を返す関数**です。`await`なしで呼べば`Promise`を受け取ることもできますし、逆に`async`表記でない、返り値が`Promise`の関数を`await`させることもできます。
2
2
 
3
- そして、[`async-await`の仕様](https://tc39.github.io/ecmascript-asyncawait/)を読み解いてみると、`await`が現れるまでの間は**呼び出し直後に実行される**こととなります。簡単に言えば、`await`以降の行を、`await`で待つ`Promise`の`.then()`に切り出したような感じになります。
3
+ そして、[`async-await`の仕様](https://tc39.github.io/ecmascript-asyncawait/)を読み解いてみると、`await`が現れるまでの間は**同期的に実行される**こととなります。簡単に言えば、`await`以降の行を、`await`で待つ`Promise`の`.then()`に切り出したような感じになります。
4
4
 
5
5
  つまり、
6
6