Bienvenidos sean a este post, hoy les traigo una explicacion sobre algo que ya hemos visto en posts anteriores como son las funciones, podemos definir que una funcion es:
Un metodo utilizado para llamar o ejecutar una serie de instrucciones cuando sea solicitado
El tinchicus
Y esta puede tener cualquier nombre salvo las palabras reservadas del lenguaje, en este post tenemos un listado de ellas, la sintaxis basica de una funcion siempre va a ser:
function NombreFuncion(< Argumentos >) { .... instrucciones .... }
En el caso de las funciones siempre comienzan con la palabra function luego viene el nombre de la funcion, en general estara relacionada al tipo de accion que ejecutara, despues los argumentos que pueden ser opcionales, un bloque entre llaves ({}) y en el medio el conjunto de instrucciones a ejecutar.
La forma de llamar a nuestra funcion es simplemente con el nombre de la misma, por ejemplo:
function Ejecutar() { .... instrucciones .... } ... resto del programa .... Ejecutar(); // Dentro del mismo bloque u otro bloque script.
No se preocupen cuando veamos el ejemplo quedara mas claro, como dijimos antes la funcion puede recibir argumentos o no, es decir puede recibir valores para trabajar con nuestras instrucciones en la misma pero como aclaramos es opcional y no obligatorio, por ejemplo:
function Sumar(A, B) { alert(A + B); }
Para ejecutarlo usamos lo siguiente:
Sumar(5,4);
Tenemos en este caso una funcion llamada Sumar(A,B), la cual recibira dos parametros, A y B, y nos mostrara por medio de un alert() la suma de los dos valores pero para ello efectuamos una llamada informando los dos valores, si no informamos alguno de los dos valores o ninguno de los dos puede devolvernos un error porque no puede sumar valores de tipo null o undefined pero en este caso informamos los valores y nos deberia devolver el valor 9 porque es la suma de 5 + 4 pero esto es un ejemplo porque nosotros podriamos enviar informacion para ser procesada por un switch o un if, tambien para un for en fin para cualquier instruccion de las vistas hasta ahora, los argumentos no son otra cosa que variables las cuales poseen dos tipos de entornos que pueden afectar a nuestra variable.
Las variables pueden ser de dos tipos:
- locales
- globales
Las locales son aquellas que se encuentran dentro de un bloque y su valor solo estara emparentada a dicho bloque y este bloque puede ser una funcion, un condicional, un bucle, etc, en cambio las globales son aquellas que se declaran por fuera de las funciones o de los bloques anteriormente citados ocasiondas pueden ser usadas en cualquier funcion o bloque de script de la pagina, en general las variables globales son declaradas inicialmente en el primer tag de SCRIPT, con estos conceptos basicos repasados veamos un ejemplo:
funcion.html
<html>
<script languauge="javascript">
<!--
document.title="Ejemplo de funcion";
var mivar=10;
function preguntar()
{
var F=prompt("Ingresa la cantidad de filas:");
var C=prompt("Ingresa la cantidad de columnas:");
dibujar(F,C);
}
function dibujar(FILA,COLUMNA)
{
for(f=0; f<FILA; f++)
{
for(c=0;c<COLUMNA;c++)
{
document.write("*");
}
document.write("<br>");
}
}
function mivariable()
{
var mivar=20;
document.write("<br>mivar dentro de la funcion: " + mivar + "<br>");
mivar+=10;
document.write("mivar incrementado en 10: " + mivar + "<br>");
}
//-->
</script>
<script language="javascript">
<!--
preguntar();
mivariable();
document.write("mivar a nivel global: " + mivar);
//-->
</script>
</html>
Este caso es un poco simple, ante todo vamos a crear una variable de tipo global llamada mivar la cual tendra un valor de 10, luego tendremos una funcion llamada preguntar(), en la cual tendremos dos variables llamadas F y C que por medio de un prompt le estableceremos un valor a cada una, para finalmente llamar a la funcion dibujar() y a la cual le enviaremos los valores ingresados en F y C, nuestra siguiente funcion sera justamente dibujar() para la cual recibira dos datos: FILA y COLUMNA, en este caso al igual que el anterior los hice mayusculas porque seran constantes y no se modificaran en el resto del programa, la funcion dibujar() se encargara de dibujar un rectangulo o cuadrado , dependiendo de la cantidad de filas y columnas que hayamos informado, y para ello primero usar un for donde se encargara de dibujar las filas, teniendo una variable inicial llamada f que iniciara en cero, luego el condicional mientras f sea menor a FILA y por ultimo el incrementador de f, para inmediatamente pasar a otro for pero esta vez sera el encargado de dibujar las columnas y para ello tendra una variable llamada c que comenzara de cero, luego el condicional mientras c sea menor a COLUMNA y por ultimo el incrementador de c, haremos una document.write de un asterisco (*), un vez finalizado el bucle hara un document.write y como tiene un cambiador de linea (br) para repetir el ciclo del for anterior, y a si la cantidad de veces informadas en FILA.
Nuestra ultima funcion sera mivariable(), en ella crearemos una variable llamada mivar, igual a la global, donde le asignaremos el valor de 20, a continuacion mostraremos un mensaje con el valor de mivar para luego incrementarla en 10 y mostrar el nuevo valor, con esto terminamos el primer bloque de script, luego pasamos al siguiente donde primero llamaremos a preguntar() y luego a mivariable() para finalmente mostrar el valor de mivar, en este caso el global, si lo ejecutamos obtendremos un resultado como este
Como pueden observar en el ejemplo primero ingresamos los valores de FILA y COLUMNA, nos lo dibuja con los asteriscos, para finalmente mostrarnos los valores de mivar, los primeros dos dentro de la funcion mivariable() y el ultimo es el global que no se vio afectado pero esto gracias a que usamos la linea: var mivar=20; sino la usaramos tomaria la variable global y la modificaria, prueben de renombrarla o comentarla y ejecuten de nuevo el ejemplo, lo mismo aplica si comentan o eliminan al mivar global.
En resumen, hoy hemos visto que son y para que sirven las funciones, su sintaxis, la forma de llamarlo, los argumentos que podemos enviar y la diferencia entre locales y globales, esto que hemos visto es para el caso de funciones nuestras pero el sistema posee sus propias funciones de las cuales veremos algunas importantes en el proximo post, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.
Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.


Tambien podes donar
Es para mantenimiento del sitio, gracias!
$1.50