Saltar al contenido principal
Codigo Heroe
Tarea anterior
Funciones4/19
A la lista de tareas
  1. 1. Cálculo de millas con variables
  2. 2. Condición para vuelos largos
  3. 3. Reutilizar variables sin declararlas de nuevo
  4. 4. Crear una función
  5. 5. Llamar a una función
  6. 6. Parámetros y argumentos
  7. 7. Orden de los argumentos
  8. 8. Devolver un valor con return
  9. 9. Parámetros booleanos
  10. 10. Guardar el resultado en una variable
  11. 11. Salida anticipada con return
  12. 12. Simplificar el cálculo con una variable
  13. 13. Agregar una condición al cálculo
  14. 14. Llamar a una función desde otra
  15. 15. Agregar un parámetro y redondear el resultado
  16. 16. Devolver y usar la cantidad de vuelos
  17. 17. Reutilizar los resultados de una función
  18. 18. Comparar los resultados
  19. 19. Llamar a funciones dentro de un ciclo
Siguiente tarea
  • Matriz de skills
  • Cursos
  • Registro
  • Iniciar sesión

Loading…
En unos segundos, estará listo.

  • Teoría
  • Teoría

Crear una función

¿Ya notaste el problema?

El programa funciona y calcula las millas, pero ¿qué pasará si Cupcake se entusiasma y decide volar a diez ciudades más? Tendremos que copiar una parte del código una y otra vez, cambiar la distancia, hacer los cálculos y además evitar volver a declarar las mismas variables, porque eso infringe las reglas del lenguaje. Claro que resolveremos la tarea, pero nos llevará mucho tiempo y el código crecerá hasta tener cientos de líneas.

¿Hay una forma más práctica de hacer los cálculos sin copiar código? ¡Sí! Escribir una función.

Una función es un fragmento de código que puedes escribir una vez y usar muchas veces. No se limita a contener un valor, como una variable, sino que realiza una acción y resuelve una tarea: calcula, compara o busca. Por ejemplo, nuestra función calculará las millas acumuladas en un vuelo.

Pero primero veamos de qué se componen las funciones y cómo se declaran, es decir, cómo se crean en el código.

let functionName = function () {
  // Acciones que realiza la función, o «cuerpo de la función»
};

functionName es el nombre de la variable que contiene la función. Con ese nombre podremos acceder a ella y usarla muchas veces. Consideremos que el nombre de la variable es también el nombre de la función.

Hay otras formas de crear funciones. Las veremos más adelante, en otras lecciones.

Crear funciones no es más difícil que crear condiciones o ciclos. Usamos la palabra clave function y después agregamos paréntesis. Dentro de las llaves van las acciones que la función realizará cada vez que la llamemos. ¿Recuerdas los ciclos? Allí el código dentro de { } se llama «cuerpo del ciclo»; aquí se llama «cuerpo de la función».

Escribamos la función calculateMiles para calcular las millas.

Fíjate en el nombre calculateMiles. La función literalmente calcula millas, es decir, hace algo. Es una regla habitual al nombrar funciones: el nombre debe contener un verbo. Así es más fácil entender tanto el código propio como el de otras personas. Quizá un colega haya escrito la función y no tengas idea de lo que contiene. Con solo mirar su nombre podrás hacerte una idea de para qué sirve.

  • script.js
JavaScript
let percent = 0.25; let distance = 4125; if (distance > 10500) { percent = 0.35; } let miles = distance * percent; console.log('Por el vuelo a Irkutsk obtendremos ' + miles + ' millas'); // Elimina el código que aparece a continuación percent = 0.25; distance = 11000; if (distance > 10500) { percent = 0.35; } miles = distance * percent; console.log('Por el vuelo a Kamchatka obtendremos ' + miles + ' millas');
Consola

El código ha cambiado, haga clic en "Ejecutar" o active la ejecución automática.

Resultado de la ejecución

ObjetivosRealizado
0
    1. Elimina todo el código que calcula las millas del segundo vuelo: las variables, la condición y la salida en la consola.
    2. Al final del programa, agrega la declaración de la función que calculará las millas: let calculateMiles = function () { };.
    3. Mueve el código del primer vuelo al cuerpo de la función calculateMiles.
    Codigo Heroe

    © 2023-2026, codigoheroe.com