Comment exécuter async / await en parallèle en Javascript

Enfin async/await sera pris en charge dans tous les principaux navigateurs bientôt sauf IE.
Ainsi, nous pouvons maintenant commencer à écrire un code plus lisible avec async/await mais il ya un hic. Beaucoup de gens utilisent async attendent comme ceci:

const userResponse = await fetchUserAsync();
const postsResponse = await fetchPostsAsync();

Bien que ce code soit lisible, il a un problème, il exécute les fonctions de la série, de ne pas démarrer l'extraction de messages jusqu'à ce que l'extraction de l'utilisateur est terminé. La solutions est simple, nous avons besoin de récupérer les ressources en parallèle.

Donc ce que je veux faire, c'est (en pseudo-langage):

fn task() {
  result-1 = doAsync();
  result-2 = doAsync();
  result-n = doLongAsync();

  //handle results together
  combinedResult = handleResults(result-1, result-2);

  lastResult = handleLastResult(result-n);
}