Objetos, o mejor dicho Clases, existentes internamente en JavaScript: Array, String, Math, Date. Además existen unas pocas funciones internas de uso general que no pertenecen a ninguna clase.


La clase Array

Como ya se comentó, los arrays se definen mediante la clase Array:

    var nombre=new Array(número_de_elementos)

El índice comienza en cero. Los elementos pueden ser de distinto tipo y de cualquier tipo, incluso objetos, y se asignan como cualquier otra variable. Incluso se pueden definir nuevos elementos sobre la marcha:

    var a=new Array(3);
    a[0]="Juan"; a[1]="Pedro"; a[2]="Rosa";
    ...
    a[3]="Javier"; a[4]="María"; //¡Nuevos elementos!
    ...
    var b=new Array(); //Sin reservar espacio.
    a[0]=10; a[1]=20; a[2]=30; //Asignación dinámica de memoria.

La clase String

En realidad cualquier cadena de caracteres pertenece implícitamente a la clase String, por lo que no es necesario crear instancias con new.

La clase String tiene varios métodos y una sola propiedad llamada length, que contiene el número de caracteres de la cadena (sólo lectura).

Métodos de Contenido del String

Nota: es posible aplicar un método a un literal. Ej.: "Hola".toUpperCase()

Métodos de HTML del String

Métodos que devuelven la cadena con un formato determinado con el que aparecerá al escribirse en un documento HTML. Así por ejemplo, sea str una cadena:
    document.write("Esto es ", str.bold(), ".");
es exactamente igual que:
    document.write("Esto es <B>", str, "</B>.");


El Objeto Math

Se considera un objeto estático al que se accede para obtener constantes o resultados de cálculos. Siempre trabaja con reales y los águlos se miden en radianes (pi rad = 180º).

Las propiedades no son más que constantes matemáticas:

Los métodos son:

Nota: si se utilizan varias propiedades y métodos a la vez, se puede utilizar la sentencia with para no tener que poner siempre Math. delante de cada uno.


La clase Date

No tiene propiedades, sólo métodos. Las fechas se almacenan como el número de milisegundos desde el 1-1-1970. Para fechas menores se obtienen números negativos, así que hay que tener cuidado en esos casos.

La clase Date tiene tres constructores:

Los métodos son:

Ejemplo: Reloj en un Cuadro de Texto o en la Barra de Estado

  <SCRIPT LANGUAGE="JavaScript"><!--
  var timerID=null;
  var timerRunning=false;
  function stopclock()
  {
    if (timerRunning)
      clearTimeout(timerID);
    timerRunning=false;
  }
  function startclock()
  {
    stopclock(); //Make sure the clock is stopped.
    showtime();
  }
  function showtime()
  {
    var now = new Date();
    var h=now.getHours(), m=now.getMinutes(), s=now.getSeconds();
    var str= "" + ((h > 12) ? h-12 : h);
    str += (m < 10 ? "0" : "") + m;
    str += (s < 10 ? "0" : "") + s;
    str += (h >= 12) ? " P.M." : " A.M.";
    document.frmClock.txtClock.value = str;
    //window.status = str; en la Barra de Estado.
    //Programar siguiente llamada a la función:
    timerID = setTimeout("showtime()", 1000);
    timerRunning=true;
  }
  // --></script>

  <BODY ... onLoad="startclock()">
  <FORM NAME="frmClock" onSubmit="0">
    <DIV ALIGN="right">
    <INPUT NAME="txtClock" size=12 value="">
    </DIV>
  </form>

Funciones Internas

Funciones que no son métodos pertenecientes a ninguna clase: