Prefacio L1 L2 L3 L4 L5 L6 L7 L8 Apéndices

8.4 Funciones

En JavaScript los operadores aritméticos son:

 +  suma
 -  resta
 *  multiplicación
 /  división
 %  resto
 ++  incremento unitario
 --  decremento unitario
 -  cambio de signo

El operador % devuelve el remanente que resulta de dividir un valor entre otro. El operador ++ incrementa el valor en uno (equivale a x=x+1). El operador -- decrementa el valor en uno (equivale a x=x-1).

Los operadores de asignación en JScript son:

= asigna a la variable de la izquierda el valor de la variable de la derecha x=y
+= suma las dos variables y le asigna el resultado a la de la izquierda x+=y equivale a x=x+y
-= resta las dos variables y le asigna el resultado a la de la izquierda x-=y equivale a x=x-y
*= multiplica las dos variables y le asigna el resultado a la de la izquierda x*=y equivale a x=x*y
/= divide la variable de la izquierda entre la de la derecha,  y le asigna el resultado a la de la izquierda x/=y equivale a x=x/y
%= divide la variable de la izquierda entre la de la derecha,  y le asigna el remanente a la de la izquierda x%=y equivale a x=x%y

En JavaScript algunos cálculos pueden realizarse utilizando los métodos pre-definidos Math, que se aplican sobre objetos Math.

Math.abs(número) Devuelve el valor absoluto del número
Math.sin(número) Devuelve el seno del número
Math.cos(número) Devuelve el coseno del número
Math.round(número) Redondea el número hasta el entero más próximo
Math.cell(número) Redondea el número al entero mayor más próximo
Math.floor(número) Redondea el número al entero menor más próximo
Math.Random( ) Devuelva un número aleatorio entre 0 y 1

 

En JavaScript una función es un bloque de comandos que ejecutan ciertas acción y/o realizan ciertos cálculos. Una función siempre se identifica con un nombre, tiene parámetros (que son valores usados por la función), y comandos.

 

                                                            función nombre_de_la_función(parámetros)

                                                            {

                                                            bloque de comandos

                                                            }

 

El bloque de comandos siempre comienza con { y termina con }.

 

Para definir el nombre de una función se deben seguir las mismas reglas que para definir el nombre de una variable.

 

Construyamos una función que cuente los días que median entre la fecha de hoy y el día del examen (21 de julio de 2001).

 

function TestDays(CurrentDay)

{

  var TDay=new Date("July, 21, 2001");

  var DayCount=(TDay-CurrentDay)/(1000*60*60*24);

  var DayCount=Math.round(DayCount);

  return DayCount;

}

 

Esta función recibe una fecha que asigna al parámetro CurrentDay, le resta CurrentDay a TDay (fecha del examen), convierte el resultado a días (JScript lo calcula en milisegundos) y lo redondea al entero más cercano.

 

Insertemos la función en el código fuente:

 

<HTML>

<HEAD>
<TITLE>JavaScript</TITLE>

<SCRIPT LANGUAGE="JavaScript">

  function TestDays(CurrentDay)

  {

    var TDay=new Date("July, 21, 2001");

    var DayCount=(TDay-CurrentDay)/(1000*60*60*24);

    var DayCount=Math.round(DayCount);

    return DayCount;

  }

</SCRIPT>
</HEAD>

<BODY>

<SCRIPT LANGUAGE="JavaScript">
     var Today = new Date();
     var ThisDay = Today.getDate();             
     var ThisMonth = Today.getMonth()+1;
     var ThisYear = Today.getFullYear();   
     var DayLeft=TestDays(Today);
     document.write("Hoy es "+ThisDay+"/"+ThisMonth+"/"+ThisYear+"<BR>");
     document.write("Faltan "+DayLeft+"  días para el examen final"); 

</SCRIPT>

</BODY>

</HTML>

 

produce la salida

 

 

ya que se corrió el 21 de mayo de 2001. Cada día se actualizarán la fecha y la cantidad de días para el examen final.

 

Note que la línea de comando var DayLeft=TestDays(Today); envía a la función TestDays el valor de la variable Today, que es asignado al parámetro CurrentDay para calcular los días que faltan para la fecha del examen final. El resultado de este cálculo es enviado por la función de regreso, sirviendo para que  document.write("Faltan "+DayLeft+"  días para el examen final");  cumpla su cometido.

 

Es imposible abarcar JavaScript en una lección. El propósito de ésta es familiarizar al estudiante con las potencialidades de JavaScript para la programación web y estimularle para que busque más información sobre el tema. Existen numerosos tutoriales de JScript en la Red. Un buen comienzo sería visitar el sitio  Beginner's Guide to JavaScript.

 

| Lección 8 | 8.1 | 8.2 | 8.3 | 8.4 |