¿Funciones Declarativas o Funciones Expresivas? En Javascript tenemos las funciones se declaran como declarativas o expresivas. Pero, ¿Cuál de ellas podemos utilizar?
Pasemos a explicar ambas funciones y qué utilidad nos trae cada una.
Funciones declarativas
Por el lado de las funciones declarativas son aquella funciones donde utilizas la palabra reservada function
al inicio de la línea. Por ejemplo:
Este tipo de funciones utiliza el hoisting (almacenamiento en memoria), un proceso donde lleva las declaraciones de variables y funciones al comienzo del código, en especial se aplica donde se usaron las palabras reservadas var
y function
.
Otro dato a tomar en cuenta es que al tener hoisting, puede ser llamada antes de que sea declarada. Es decir, si tu función ha sido llamada y no declarada antes, causará errores.
Funciónes Expresivas
Las funciones de expresión son aquellas funciones que se guardan en una variable con las palabras reservadas var
, const
o let
. Por ejemplo:
Diferencias entre las funciones declarativas y las funciones expresivas
Como verán, en ambos tipos de de declarar a la función es el mismo procedimiento. La única cosa que separa a la una de la otra, es su forma de declararla.
Una vez aclarado los conceptos de ambas funciones, surge otra pregunta: ¿Qué diferencias hay entre las funciones declarativas y las funciones de expresión?
Aquí dejo una tabla para anotar las diferencias que hay entre ellas.
Funciones Declarativas | Funciones Expresivas |
---|---|
Se les aplica hoisting | No se les aplica hoisting |
Pueden llamarse antes de que la función sea declarada | Se declara primero la funcion y luego se llama |
Si deseas aprender más acerca las funciones en javacript, te invito a revisar la documentación de MDN.
Sigueme en mis redes sociales para más contenido
Gran trabajo amigo detallado y explícito 10/10