logo

Funciones de flecha en JavaScript

¿Qué es la función de flecha?

Función de flecha {()=>} Es una forma concisa de escribir funciones de JavaScript de forma más breve. Funciones de flecha se introdujeron en la versión ES6. Hacen que nuestro código sea más estructurado y legible.

programas java

Funciones de flecha Son funciones anónimas, es decir, funciones sin nombre pero que a menudo están asignadas a cualquier variable. También se les llama Funciones Lambda .

Sintaxis:



const gfg = () =>{ console.log( '¡Hola geek!' ); }>

Los siguientes ejemplos muestran el funcionamiento de las funciones de flecha en JavaScript.

menú de configuración de android

Función de flecha sin parámetros

JavaScript
const gfg = () =>{ console.log( '¡Hola de GeekforGeeks!' ); } gfg();>

Producción
Hi from GeekforGeeks!>

Función de flecha con parámetros

JavaScript
const gfg = ( x, y, z ) =>{  console.log( x + y + z ) } gfg( 10, 20, 30 );>

Producción
60>

Función de flecha con parámetros predeterminados

JavaScript
const gfg = ( x, y, z = 30 ) =>{  console.log( x + ' ' + y + ' ' + z); } gfg( 10, 20 );>

Producción
10 20 30>

Las funciones de flecha pueden ser asíncronas anteponiendo a la expresión la palabra clave async.

async param =>expresión asíncrona (param1, param2, ...paramN) => {declaraciones}>

Ventajas de las funciones de flecha

  • Las funciones de flecha reducen el tamaño del código.
  • La declaración de retorno y los corchetes de función son opcionales para funciones de una sola línea.
  • Aumenta la legibilidad del código.
  • Las funciones de flecha proporcionan un enlace léxico. Es decir, heredan el valor de this del alcance adjunto. Esta característica puede resultar ventajosa cuando se trata de detectores de eventos o funciones de devolución de llamada donde el valor de esto puede ser incierto.

Limitaciones de las funciones de flecha

  • Las funciones de flecha no tienen la propiedad prototipo.
  • Las funciones de flecha no se pueden utilizar con la nueva palabra clave.
  • Las funciones de flecha no se pueden utilizar como constructores.
  • Estas funciones son anónimas y es difícil depurar el código.
  • Las funciones de flecha no se pueden usar como funciones generadoras que usan la palabra clave rendimiento para devolver múltiples valores a lo largo del tiempo.

Navegadores compatibles

  • Cromo 45 y superior
  • Borde 12 y superior
  • Firefox 22 y superior
  • Ópera 32 y superior
  • Safari 10 y superior