| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/async_function | [Back] [Original] |
Get to know MDN better
async function
async function (param0) {
statements
}
async function (param0, param1) {
statements
}
async function (param0, param1, /* , */ paramN) {
statements
}
async function name(param0) {
statements
}
async function name(param0, param1) {
statements
}
async function name(param0, param1, /* , */ paramN) {
statements
}
:
async function async function async function
async function async function async function async function async function async function IIFE await
function resolveAfter2Seconds(x) {
return new Promise((resolve) => {
setTimeout(() => {
resolve(x);
}, 2000);
});
}
//
const add = async function (x) {
const a = await resolveAfter2Seconds(20);
const b = await resolveAfter2Seconds(30);
return x + a + b;
};
add(10).then((v) => {
console.log(v); // 4 60
});
// IIFE
(async function (x) {
const p1 = resolveAfter2Seconds(20);
const p2 = resolveAfter2Seconds(30);
return x + (await p1) + (await p2);
})(10).then((v) => {
console.log(v); // 2 60
});
async IIFE await for...await await IIFE async function
const getFileStream = async (url) => {
// implementation
};
(async () => {
const stream = await getFileStream("https://domain.name/path/file.ext");
for await (const chunk of stream) {
console.log({ chunk });
}
})();
| ECMAScript 2027 LanguageSpecification # sec-async-function-definitions |
| Web Proxy Viewer | New URL | Original Page |