Movatterモバイル変換


[0]ホーム

URL:


  1. Веб-технологии для разработчиков
  2. JavaScript
  3. Справочник по JavaScript
  4. Выражения и операторы
  5. async function expression

This page was translated from English by the community.Learn more and join the MDN Web Docs community.

View in EnglishAlways switch to English

async function expression

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨апрель 2017 г.⁩.

Ключевое словоasync function используется для определения асинхронной функции внутри выражений.

Вы также можете определить асинхронные функции при помощиинструкции async function.

Синтаксис

async function [name]([param1[, param2[, ..., paramN]]]) {   statements}

Согласно спецификацииES2015, вы также можете использоватьстрелочные функции.

Параметры

name

Имя функции. Этот параметр может быть опущен, в этом случае говорят обанонимной функции. Имя используется только в теле функции.

paramN

Имя аргумента, передаваемого функции.

statements

Инструкции, составляющие тело функции.

Описание

Выражениеasync function очень похоже, и имеет почти тот же синтаксис, что иasync function statement. Главное отличие между выражениями asyncfunction и объявлениями asyncfunction заключается вимени функции, которое может быть опущено в выраженииasync function для созданияанонимной функции. Выражениеasync function можно использовать в видеIIFE (Immediately Invoked Function Expression), и оно будет запущено сразу после объявления. Смотрите также главу офункциях.

Примеры

Простой пример

js
function resolveAfter2Seconds(x) {  return new Promise((resolve) => {    setTimeout(() => {      resolve(x);    }, 2000);  });}(async function (x) {  // выражение асинхронной функции в виде IIFE  var a = resolveAfter2Seconds(20);  var b = resolveAfter2Seconds(30);  return x + (await a) + (await b);})(10).then((v) => {  console.log(v); // выведет 60 после 2 секунд.});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); // выведет 60 после 4 секунд.});

Спецификации

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

Совместимость с браузерами

Смотрите также

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp