sintaxis - funciones javascript
Sintaxis para la función de flecha asÃncrona (6)
/ * foo = async (accesorios) => {
/* Code goes here */
} Por favor, elimine estos comentarios * /
Puedo marcar una función de JavaScript como "asíncrono" (es decir, devolver una promesa) con la palabra clave
async
.
Me gusta esto:
async function foo() {
// do something
}
¿Cuál es la sintaxis equivalente para las funciones de flecha?
Esta es la forma más simple de asignar una expresión de función de flecha asíncrona a una variable con nombre :
const foo = async () => {
// do something
}
Ta-da!
(Tenga en cuenta que esto no es estrictamente equivalente a la
async function foo() { }
. Además de
las diferencias entre la palabra clave de
function
y una expresión de flecha
, la función en esta respuesta no está
"elevada al principio"
).
Función de flecha asíncrona invocada inmediatamente:
(async () => {
console.log(await asyncFunction());
})();
Expresión de función asincrónica invocada inmediatamente:
(async function () {
console.log(await asyncFunction());
})();
Las funciones de flecha asíncronas se ven así:
const foo = async () => {
// do something
}
Las funciones de flecha asíncronas se ven así para un solo argumento que se le pasa:
const foo = async evt => {
// do something with evt
}
La forma anónima también funciona:
const foo = async function() {
// do something
}
Una declaración de función asíncrona se ve así:
async function foo() {
// do something
}
Uso de la función asíncrona en una devolución de llamada :
const foo = event.onCall(async () => {
// do something
})
Sintaxis de la función de flecha asíncrona con parámetros
const MyFunction = async (a,b,c) => {
//code here
}
También puedes hacer:
YourAsyncFunctionName = async (value) => {
/* Code goes here */
}