Seguramente, cuando empezamos a programar, aprendimos que una función es una transformación que podemos hacer sobre un dato: un procedimiento o un conjunto de sentencias que realizan una tarea o calculan un valor.
Las funciones son los principales bloques de construcción de un programa, pero en JavaScript son una de las estructuras más importantes y versátiles: ¡son un tipo de dato!
Ya hemos visto ejemplos de funciones integradas en el lenguaje, como alert()
o log()
, pero también podemos crear funciones propias y, como podemos esperar, el terreno de las funciones en JavaScript es bastante complejo.
Intentemos revisar algunas prácticas que, aunque las usemos día a día, podrían resultarnos poco claras y paradigmáticas.
La forma estándar de declarar una función en JavaScript sigue una estructura simple y muy conocida para quienes hayamos usado otros lenguajes de programación.
La estructura de declaración de una función es:
function nombreDeLaFuncion() {
*sentencias*
}
Analicemos sus partes:
function
es la palabra clave que indica que declararemos un función;nombreDeLaFuncion
es el identificador de la función y hace referencia a el nombre con el que invocaremos a esta función en el futuro;sentencias
puede ser cualquier combinación de expresiones válidas de JavaScript, e incluso podemos hacer que nuestra función tenga un retorno con la palabra clave return
.Un ejemplo de uso de estas funciones estándares es la función hola()
, que vemos en el siguiente código, que devuelve el string "Hola 👋🏻"
.
function hola() {
return "Hola 👋🏻";
}
Luego, si quisiéramos usar esta función, la invocamos con su nombre:
. . .
hola(); // "Hola 👋🏻"
. . .
O podríamos asignar su valor de retorno a una variable:
. . .
let a = hola();
console.log(a); // "Hola 👋🏻"
. . .