Hasta ahora, hemos visto como realizar código de una forma estructurada, con sentencias de control que nos permiten dominar la ejecución del mismo fácilmente. Pero si sólo tenemos esto, solamente podremos manejar el código de forma lineal: ejecutaremos las líneas una a una, una detrás de la otra, hasta el final del programa. Es más, si quisiéramos usar un determinado código varias veces en el mismo programa tendríamos que repetir ese código varias veces, teniéndolo que adaptar a cada situación. ¿Y qué ocurre si queremos reutilizar un código en varios programas? Es un problema que se resuelven gracias a las funciones.
Las funciones son trozos de código que tienen un nombre y que podemos utilizar en cualquier parte de nuestro código con una llamada directa. Este es un buen ejemplo:
function datos_personales(nombre, apellidos, edad) {
return "Hola, " + nombre + " " + apellidos + ", tienes " + edad + " años.";
}
En este caso hemos definido una función que, usando los parámetros que le hemos pasado, los combina para formar una cadena formateada, que devuelve gracias a la palabra reservada return. ¿Y cómo podemos usar este código?
alert(datos_personales('Pepito', 'Pérez', 25));De tal forma que primero ejecutaremos la función datos_personales con los parámetros pasados, y después la función alert, que nos permite mostrar una ventana con un mensaje en la pantalla, con el resultado devuelto por la función que hemos creado. Este seria el código completo del programa:
<html>
<head>
<title>código de función</title>
<script>
function datos_personales(nombre, apellidos, edad) {
return 'Hola, ' + nombre + ' ' + apellidos + ', tienes ' + edad + ' años.';
}
</script>
</head>
<body>
<script>
alert(datos_personales("Pepito", "Perez", 25))
</script>
</body>
</html>
Los parámetros son un elemento importante en las funciones. Se trata de datos que podemos pasar a nuestras funciones para que estas los procesen de alguna forma, lo cual dará como resultado o una salida en el navegador (texto o ventanas), o bien un resultado que se puede usar cuando llamemos a la función. Cuando indiquemos parámetros, deberemos indicar la lista completa de parámetros que vamos usar en esa función. Al llamar a la función, deberemos hacerlo con todos los parámetros indicados. De otra forma, se produciría un error de ejecución. Los parámetros se convierten en variables de datos dentro de la función, de ahí que podamos utilizarlas e incluso modificarlas.
Generalmente, las funciones se utilizan para realizar alguna operación no visible (matemática, de cadena de caracteres, de objetos, etc...) que devuelve por medio de return, pero también se pueden visualizar elementos en el navegador usando las funciones y objetos que ya incorpora JavaScript.
function suma(dato1, dato2)
{
return dato1 + dato2;
}
Al utilizar esta función, podemos hacerlo de varias formas:
var total = suma(1,2); // 3alert(suma(7,43)); // 50document.write(total + suma(54,-7)); // 50Mas adelante veremos que podemos incluir código desde otro archivo y por supuesto, ese código puede contener funciones.