anchor.diff:  });
   ----
   
  -この問題を解決する方法として、先ほどのようにコールバック関数を定義する必要がないforループを使う方法があります。
  -また、別の方法として``Promise.all``メソッドを使う方法があります。
  +この問題を解決する方法として、先ほどのようにコールバック関数を使わなくても済むforループを使う方法があります。
  +また、リソースを順番が重要ではない場合は、``Promise.all``メソッドを使う方法があります。
   
   [relationship-promise-async-function]
   === PromiseとAsync Functionを組み合わせる
  
positive.code: 
  ``await``式はAsync Functionの中でのみ利用可能なため、コールバック関数もAsync Functionとして定義しないと``await``式が利用できないことに注意してください。
  
  そのため、``fetchResources``関数の``Array#forEach``メソッドのコールバック関数に対して``async``キーワードをつける必要があります。
  この場合は、コールバック関数がAsync Functionとなるため、コールバック関数内で``await``式が利用できます。
  しかし、コールバック関数をAsync Functionに修正するだけでは、構文エラーはおきなくなりますが、``fetchResources``関数が意図した結果を返しません。
  
  [role="executable"]
  [source,javascript]
  
negative.code: });
  ----
  
  ``forEach``メソッドのコールバック関数としてAsync Functionを渡し、コールバック関数中で``await``式を利用して非同期処理の完了を待っています。
  しかし、この非同期処理の完了を待つのはコールバック関数Async Functionの中だけで、外側では``fetchResources``関数の処理が進んでいます。
  そのため、コールバック関数で``results``に結果を追加する前に、``fetchResources``関数は空の``results``を返してしまいます。
  
  