Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez également contribuer en rejoignant la communauté francophone sur MDN Web Docs.

Expression async function

BaselineWidely available

Le mot-cléasync function peut être utilisé pour définir une fonction asynchrone au sein d'une expression.

Note :Il est aussi possible de définir une fonction asynchrone en utilisant uneinstructionasync function.

Syntaxe

js
async function [name]([param1[, param2[, …, paramN]]]) {  instructions}

Paramètres

name

Le nom de la fonction. Il est facultatif et s'il n'est pas utilisé, la fonction estanonyme. Le nom utilisé est uniquement local pour le corps de la fonction.

paramN

Le nom d'un argument à passer à la fonction.

instructions

Les instructions qui composent le corps de la fonction.

Note :À partir d'ES2015 (ES6), il est aussi possible d'utiliser desfonctions fléchées pour les expressions de fonction asynchrone.

Description

Une expressionasync function est très proche, et partage quasiment la même syntaxe avecune instruction async function. La différence principale entre une expression asyncfunction et une instruction asyncfunction est qu'on peut omettre le nom de la fonction dans les expressionsasync function. On peut donc utiliser une expressionasync function afin de créer uneIIFE (pourImmediately Invoked Function Expression) qu'on appelle au moment de sa définition. Voir également le chapitre surles fonctions pour plus d'informations.

Exemples

Exemple simple

js
function resolveAfter2Seconds(x) {  return new Promise((resolve) => {    setTimeout(() => {      resolve(x);    }, 2000);  });}(async function (x) {  // fonction asynchrone immédiatement appelée  var a = resolveAfter2Seconds(20);  var b = resolveAfter2Seconds(30);  return x + (await a) + (await b);})(10).then((v) => {  console.log(v); // affiche 60 après 2 secondes.});var add = async function (x) {  var a = await resolveAfter2Seconds(20);  var b = await resolveAfter2Seconds(30);  return x + a + b;};add(10).then((v) => {  console.log(v); // affiche 60 après 4 secondes.});

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-async-function-definitions

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp