Volver a la página principal de HTML en castellano
HTML en castellano recomienda...

Curso de Javascript 1.2


En esta página:


Funciones

Incluso los programas más sencillos tienen la necesidad de dividirse. Las funciones son los únicos tipos de subprogramas que acepta JavaScript. Tienen la siguiente estructura:

function nombre(argumento1, argumento2,..., argumento n) {
  código de la funcion
}

Los parámetros se pasan por valor. Eso significa que si cambiamos el valor de un argumento dentro de una función, este cambio no se verá fuera:

function sumarUno(num) {
  num++;
}

var a = 1:
sumarUno(a);

En este ejemplo, a seguirá valiendo 1 después de llamar a la función. Esto tiene una excepción, que son las referencias. Cuando se cambia el valor de una referencia dentro de una función también se cambia fuera.

Para devolver un valor de retorno desde la función se utiliza la palabra reservada return:

function cuadrado(num) {
  return num * num;
}

a = cuadrado(2);

En este ejemplo, a valdrá 4.

Se pueden definir funciones con un número variable de argumentos. Para poder luego acceder a dichos parámetros dentro de la función se utiliza el vector arguments. Este ejemplo sumaría el valor de todos los parámetros:

function sumarArgumentos() {
  resultado = 0;
  for (i=0; i<arguments.length; i++)
    resultado += arguments[i];
  return resultado;
}

Funciones predefinidas

JavaScript dispone de las siguientes funciones predefinidas:

eval(cadena)

Ejecuta la expresión o sentencia contenida en la cadena que recibe como parámetro.

mensaje = 'Hola';
eval("alert('" + mensaje + "');");

Este ejemplo nos muestra una ventana con un saludo.

parseInt(cadena [, base])

Convierte en un número entero la cadena que recibe, asumiendo que está en la base indicada. Si este parámetro falta, se asume que está en base 10. Si fracasa en la conversión devolverá el valor NaN.

parseInt("3453");

Devuelve el número 3453.

parseFloat(cadena)

Convierte en un número real la cadena que recibe, devolviendo NaN si fracasa en el intento.

parseFloat("3.12.3");

Este ejemplo devuelve NaN ya que la cadena no contiene un número real válido.

isNaN(valor)

Devuelve true sólo si el argumento es NaN.

isFinite(numero)

Devuelve true si el número es un número válido y no es infinito.

Number(referencia)
String(referencia)

Convierten a número (o referencia) el objeto que se les pase como argumento.