JavaScript de Cero a Experto / Funciones
Funciones: empaquetar y reutilizar código
Hasta ahora tu código va de corrido, y para repetir una lógica tendrías que copiar y pegar. Las FUNCIONES lo cambian todo: empaquetas un bloque de código con un nombre y lo ejecutas cuando quieras, cuantas veces quieras. Es el salto de "escribir instrucciones" a "construir tus propias herramientas" — la base de todo programa organizado.
La receta guardada
Declarar y llamar
Dos momentos distintos: declarar (function nombre() { ... }) escribe la
receta pero no la cocina; llamar (nombre(), con los paréntesis) la
ejecuta. Sin los (), solo te refieres a la función; con ellos, la corres.
Y una función puede recibir DATOS entre los paréntesis (los "parámetros")
para hacer su trabajo con distintos valores — verás eso a fondo en la
próxima lección.
return: devolver un resultado
Muchas funciones no solo HACEN algo, sino que CALCULAN y DEVUELVEN un valor
con return:
return hace dos cosas: entrega un valor a quien llamó la función Y termina
la función ahí mismo (lo que va después no se ejecuta). Una función que
calcula algo casi siempre lo returnea, para que el resultado se pueda
guardar o reutilizar. Una función SIN return devuelve undefined (hizo
algo, pero no entrega valor — como saludar, que solo imprime).
¿Cuál es la diferencia entre 'declarar' y 'llamar' una función, y qué pasa si escribes saludar sin los paréntesis?
Mini-reto
En "Mi Bolsillo": escribe una función registrarGasto(nombre, valor) que
imprima "Gasto registrado: [nombre] por [valor]". Llámala tres veces con
gastos distintos. Luego escribe una función calcularIva(precio) que
DEVUELVA (return) el precio con 19% de IVA, y usa su resultado en un
console.log. Nota lo que ganas: la lógica del IVA en UN solo sitio, usable
con cualquier precio.
Qué sigue
Ya empaquetas código y devuelves resultados. La próxima lección profundiza en cómo las funciones RECIBEN datos: parámetros, argumentos, valores por defecto para cuando falta un dato, y las buenas prácticas para diseñar funciones claras. El arte de hacer funciones flexibles.