Syntax for an async arrow function
Async arrow functions look like this:
const foo = async () => { // do something}
Async arrow functions look like this for a single argument passed to it:
const foo = async evt => { // do something with evt}
Async arrow functions look like this for multiple arguments passed to it:
const foo = async (evt, callback) => { // do something with evt // return response with callback}
The anonymous form works as well:
const foo = async function() { // do something}
An async function declaration looks like this:
async function foo() { // do something}
Using async function in a callback:
const foo = event.onCall(async () => { // do something})
Using async method inside of a class:
async foo() { // do something}
This the simplest way to assign an async
arrow function expression to a named variable:
const foo = async () => { // do something}
(Note that this is not strictly equivalent to async function foo() { }
. Besides the differences between the function
keyword and an arrow expression, the function in this answer is not "hoisted to the top".)
Immediately Invoked Async Arrow Function:
(async () => { console.log(await asyncFunction());})();
Immediately Invoked Async Function Expression:
(async function () { console.log(await asyncFunction());})();