Guía Rápida de JavaScript 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 30

JavaScript

manual de referencia

Autor: Jorge Snchez (www.jorgesanchez.net) ao 2003

Basado en el lenguaje JavaScript compatible para los navegadores Explorer


y Netscape.
Versin normalizada de la ECMA (llamado ECMAScript) en:
http://www.ecma-international.org/publications/standards/Ecma-262.htm
Manual de referencia de JavaScript- Jorge Snchez 2003 2

nociones bsicas

Java y Javascript
Java es un lenguaje de programacin (como el Pascal, el BASIC o el C y C++) que fue
desarrollado por la empresa Sun fundamentalmente para crear aplicaciones para
Internet. El lenguaje Java es completo, es decir permite realizar cualquier operacin
sobre el ordenador (como por ejemplo borrar un archivo) y su aprendizaje es costoso.
Javascript es lo que se conoce como lenguaje script, es decir: se trata de cdigo
de programacin que se inserta dentro de un documento. Javascript fue desarrollado
por la empresa Netscape con la idea de potenciar la creacin de pginas Web
dinmicas para su navegador Navigator.
Javascript (en contra de lo que se podra suponer) es totalmente distinto de Java.
Java crea programas totalmente independientes y operativos; Javascript es ms
sencillo porque lo nico que permite es insertar cdigo especial dentro del HTML de
una pgina, su funcin es ampliar las posibilidades de HTML. Javascript no crea
programas independientes, dependen por completo del cdigo HTML de la pgina.
El cdigo en Java se debe compilar (convertir en instrucciones del ordenador) y
entonces podr ser utilizado por los navegadores (son las famosas applets). Sin
embargo Javascript es interpretado directamente por el navegador; de hecho el
cdigo Javascript se incrusta dentro del cdigo HTML de la pgina.
Java no puede acceder a los elementos HTML de una pgina (ya que su
funcionalidad es mucho mayor) sin embargo Javascript necesita acceder a ellos, de
otro modo no tendra sentido su uso.
La ventaja fundamental de Javascript es que su aprendizaje y uso son muy
sencillos y que permite realizar labores complejas en una pgina sin necesidad de
aprender CGI.

versiones de Javascript
Puesto que JavaScript fue desarrollado por Netscape, los navegadores de esta
empresa lo incluyen desde la versin 2. Microsoft por su parte incluy en la versin 3
una variante de este cdigo llamado JScript que es casi idntico al original
JavaScript. Despus se estandariz el lenguaje, aunque ambas compaas poseen
elementos que no son comunes con el estndar (aunque prcticamente todo el
estndar es reconocido por ambas).
As aparicin el JavaScript 1.1 que es admitido por Navigator 3 y por Explorer 4. Y
las versiones 1.2 y 1.3 que son reconocidas por las versiones 4 y posteriores de ambos
navegadores.
La ECMA (asociacin industrial para la normalizacin) defini un lenguaje
estndar llamado ECMAScript que intentaba agrupar a los anteriores e inclua
instrucciones nuevas
http://www.ecma-international.org/publications/standards/Ecma-262.htm

2
Manual de referencia de JavaScript- Jorge Snchez 2003 3

inclusin de Javascript en las pginas


Para hacer que un documento HTML incluya instrucciones en Javascript se debe
hacer uso de la etiqueta <SCRIPT> de esta forma:

<script language=JavaScript>
cdigo JavaScript
</script>

Si se quiere especificar qu versin de Javascript se utiliza, para evitar que


navegadores que no soportan la versin decodifiquen el Javascript, entonces se usa,
por ejemplo:

<script language=JavaScript1.3>

navegadores no compatibles
Los navegadores que no soportan Javascript, no interpretaran las instrucciones
Javascript sino que mostraran el texto de las instrucciones en la pgina. Para evitar
que estos navegadores lean el cdigo en Javascript se hace:

<script language=Javascript>
<!-
cdigo JavaScript
//-->
</script>

El signo <!- indica principio de comentario en HTML y el signo --> indica fin de
comentario. A su vez el signo // indica comentario en Javascript (el intrprete de
Javascript no tendrn en cuenta esa lnea).

uso de un archivo externo


Tambin se puede utilizar el cdigo JavaScript escrito en un archivo separado. Este
archivo debe tener la extensin js. En el archivo se coloca slo cdigo en JavaScript.
Despus ese cdigo se puede invocar desde la pgina web con el cdigo:

<script language=Javascript src=archivo.js>

normas de escritura en Javascript

Los comentarios deben empezar con el smbolo // si son de una sola lnea o
iniciarse con los smbolos /* y finalizar con */ si son de varias lneas.
Las lneas de cdigo terminan con el signo de punto y coma (;)
Javascript distingue entre maysculas y minsculas
Las llaves ({ y }) permiten agrupar cdigo.

3
Manual de referencia de JavaScript- Jorge Snchez 2003 4

variables y operadores

variables
Una variable es un elemento que tiene un determinado nombre y que permite
almacenar valores.

nombre de las variables


Deben empezar con una letra la cual puede ir seguida de nmeros, el signo _ o ms
letras.

valores
Los valores que pueden asignarse a una variable pueden ser:

Cadenas de texto: esto es una prueba, prueba o esto es una prueba de


cdigo. Siempre se encierran entre comillas dobles o simples. Una variable de
texto que no tiene contenido, se dice que tiene valor null. La palabra null es un
trmino reconocido por Javascript.

Valores numricos: 1, -100, 1.6, 2.0E2.

Valores booleanos: true o false.

caracteres especiales
Los valores de tipo texto van entre comillas y dentro de ellos se pueden colocar
caracteres especiales (caracteres que no se pueden ver, como el cambio de lnea) los
cuales son:

\a: Alarma

\b: Retroceso (cursor una posicin hacia atrs).

\f: Nueva pgina de impresora

\n: Nueva lnea

\r: Retorno de carro

\t: Tabulador

\\: Signo \

declaracin de una variable


Para declarar una variable se puede emplear:
var variable = valor;

O simplemente:

4
Manual de referencia de JavaScript- Jorge Snchez 2003 5

variable = valor;

De tal modo, que realmente en Javascript no hace falta declarar una variable antes de
su uso. Ejemplos:

var testear = 0;
testeaTexto = Mi casa;
SeleccionarColor = true;

JavaScript permite que una variable pueda almacenar distintos tipos de datos en cada
trozo de cdigo. Es decir, una variable que ahora almacena texto, despus puede
almacenar nmeros.
Tras declarar la variable, su valor puede cambiar mediante la asignacin de un
valor:

Testear = 12.3;

O mediante la asignacin del resultado de una operacin:

Testear = 12 * 3 + varX;

conversin de datos
En muchas lenguajes si una variable toma valores de texto y luego se quiere hacer que
tome nmeros, resulta imposible hacerlo. No es el caso de JavaScript ya que realiza
conversiones implcitas. Ejemplo:

var x=50 //x es una variable de texto


var y=30 //y es una variable numrica
z1=x+y //z1 es variable de texto y vale 5010
z2=y+x //z2 es numrica y vale 60
/*dependiendo de cul sea el primer operando, se determina
el tipo del resultado*/
Naturalmente ocurrir un error si pretende convertir a un nmero, un texto normal
como Hola por ejemplo. En cualquier caso no conviene hacer conversiones de tipo
en ningn caso.

5
Manual de referencia de JavaScript- Jorge Snchez 2003 6

operadores
Los operadores son los elementos que permiten realizar operaciones con los datos del
cdigo.

operadores aritmticos
Operador Significado
+ Suma
- Resta
* Multiplicacin
/ Dividir
% Resto de la divisin
++ Incremento
-- Decremento

Ejemplo:
var valor1=50;
var valor2=10;
var valor3=20;
var suma, resta, producto, division, resto;
var incremento, decremento;

suma=valor1+valor2; //suma vale 60


resta=valor1-valor2; //resta vale 40
producto=valor1*valor2; //producto vale 5000
division=valor1/valor3; //division vale 2,5
resto=valor1%valor3; //resto vale 10

valor1++; //valor1 vale 51


valor1--; //valor1 vale 50

incremento=valor1++; //incremento vale 50 y valor1 vale 51


decremento=valor1--; //decremento vale 51, valor1 vale 50

incremento=++valor1; //incremento vale 51 y valor1 tambin


decremento=--valor1; //decremento y valor1 valen 50

6
Manual de referencia de JavaScript- Jorge Snchez 2003 7

operadores lgicos
Trabajan con proposiciones matemticas (valores bolanos) son:

Operador Significado
&& AND (Y lgico)
|| OR (O lgico)
! NOT (NO lgico)

operadores de comparacin
Son:

Operador Significado
== Igual
!= Distinto
>= Mayor o igual
<= Menor o igual
> Mayor
< Menor

operadores de asignacin
Son:

Operador Ejemplo
+= Suma y asignacin
-= Resta y asignacin
*= Producto y asignacin
/= Divisin y asignacin
%= Resto y asignacin

7
Manual de referencia de JavaScript- Jorge Snchez 2003 8

Mensajes

qu son?
Se trata de ventanas que desde el cdigo se lanzan al usuario para hacer que ste
reaccione ante una situacin o nos informe ante una duda. Realmente todos los
mensajes se obtienen a travs del objeto window (vase ms adelante).

alert
Es el mensaje ms usado. Saca un mensaje por la pantalla el cual slo deja la
posibilidad de aceptarle. Su uso es mostrar informacin al usuario pero resaltndola
de la pgina. Su sintaxis es:

alert(texto_del_mensaje);

prompt
En este caso se trata de una ventana que pide entrar datos al usuario. De modo que
esta funcin devuelve un valor que se puede usar en el cdigo si es asignado a una
variable. Su sintaxis es:

prompt(texto_del_mensaje,valor_por_defecto);
El segundo parmetro (valor por defecto) no es obligatorio incluirle y permite asignar
un valor al cuadro de texto en el que el usuario tendr que introducir informacin.
Ejemplo de uso de prompt:

respuesta=prompt(Qu quieres hacer?,comer);


En el ejemplo, el resultado de lo que el usuario responde se almacena en la variable
resultado y al principio la ventana contendr el valor comer en el cuadro de texto
destinado al usuario. Naturalmente, el usuario podr variar este valor si lo desea.
El cuadro de dilogo que saca prompt posee dos botones, uno es el de Aceptar y
el otro es el de Cancelar. Si el usuario pulsa Cancelar, la funcin prompt devuelve el
valor nulo (null).

confirm
Saca un mensaje de confirmacin el cual suele tener dos botones: Aceptar y Cancelar.
Sintaxis:

confirm(texto_del_mensaje)
La ventana mostrar el texto elegido (normalmente es una pregunta) y el usuario
elegir si desea aceptar o no el contenido. Confirm devuelve un valor true en el caso
de que el usuario acepte el mensaje, y false si no lo hace.

8
Manual de referencia de JavaScript- Jorge Snchez 2003 9

estructuras condicionales

introduccin
Las estructuras de este tema son sentencias que permiten tomar decisiones dentro del
cdigo a fin de devolver un resultado u otro dependiendo de una determinada
circunstancia que es la que se evala.

instruccin if
La instruccin IF realiza lo que se denomina un s lgico. Su forma es:

if(condicin) {
..cdigo que se ejecuta si la condicin es cierta
}
Tambin admite esta otra:

if(condicin) {
..cdigo que se ejecuta si la condicin es cierta
}else{
... ..cdigo que se ejecuta si la condicin es falsa
}
Se admite dentro de una instruccin IF, colocar otra instruccin IF. A esto se le llama
anidar condiciones if.

bucle while
Un bucle es una estructura de programacin que permite repetir sentencias hasta que
se cumpla una determinada condicin. Su forma es:

while(condicion){
... sentencias que se ejecutan mientras la condicin se cumpla
}
Ejemplo:

var x=1;
while(x<11)
{
document.write(x, );
x++;
}
// Sale 1 2 3 4 5 6 7 8 9 10

9
Manual de referencia de JavaScript- Jorge Snchez 2003 10

bucle for
Su efecto es muy similar a la anterior estructura. Permite ejecutar una serie de
sentencias hasta que se cumpla una determinada condicin.. Su estructura es:

for(valor_inicial; condicin; actualizacin)


{
..sentencias que se ejecutan mientras la condicin se cumpla
}
Ejemplo:

for(x=1;x<11;x++)
{
document.write(x, );
}
// Sale 1 2 3 4 5 6 7 8 9 10

break
Es una instruccin que hace que el navegador que se la encuentra, abandone
inmediatamente el bucle en el que est inmerso.

continue
Es parecida a la anterior, slo que en lugar de abandonar el bucle, lo que hace el
navegador es dejar de leer las siguientes instrucciones del bucle y saltar al principio
del mismo.

instruccin switch
Esta instruccin permite un mayor control sobre las condiciones, lo malo es que se
incluy en la versin 1.2 de JavaScript por lo que slo los navegadores con versin 4 o
posterior los pueden usar.
Su sintaxis es:

switch (objetodeanlisis) {
case valor1: ..instrucciones
case valor2:...instrucciones
....
default: instrucciones
}
Switch funciona de esta forma: en los parntesis se coloca una expresin a evaluar, y
en cada apartado case, se coloca un posible valor de la expresin. Los valores que se
cumplan harn que se ejecuten las instrucciones que les siguen. En caso de que no
cumpla ninguna se ejecutaran las correspondientes al default (no es obligatorio
poner este apartado). Ejemplo:

10
Manual de referencia de JavaScript- Jorge Snchez 2003 11

var x=12;

switch(x) {
case 4:document.write(Es cuatro);break;
case 8:document.write(Es ocho);break;
case 12:document.write(Es doce);break;
default: document.write(No es ninguna de las anteriores)
}
Hace falta poner la instruccin break ya que de otro cuando se encuentra el valor que
cumple la expresin, se ejecuta su case y los case siguientes.

11
Manual de referencia de JavaScript- Jorge Snchez 2003 12

Funciones y Objetos

funciones

introduccin
Como en otros muchos lenguajes, en Javascript se pueden utilizar funciones. Las
funciones son una serie de instrucciones que realizan una determinada tarea. A las
funciones se las pone un nombre que luego puede ser utilizado en el cdigo de la
pgina.

definicin de una funcin


Antes de poder usar una funcin en el cdigo de la pgina, se la debe definir; es decir,
se debe indicar qu operaciones son las que debe hacer la funcin. La definicin de la
funcin es:

function nombredelafuncin(argumento1, argumento2,...)


{
instrucciones que debe realizar la funcin
}

El cdigo que est encerrado entre llaves indica lo que realiza la funcin (por ejemplo
mostrar un mensaje de ayuda), cada vez que desde el cdigo se llame a la funcin, sta
realizar sus instrucciones.
Por otro lado los argumentos son variables que algunas funciones necesitan para
realizar su tarea

llamar a una funcin


Para usar (invocar) una funcin en el script, basta con poner su nombre seguido de
los parntesis.
Ejemplo:
function error() {
document.write(<b>Ocurri un error</B><BR>);
}

En este caso se define una funcin que muestra texto en la posicin actual del cursor.
Para utilizar esta funcin desde el cdigo sera:
error();

Lo cual mostrara el mensaje de error. Otro ejemplo (pgina HTML completa):


<HTML>
<HEAD>
<TITLE>Titulo</TITLE>

12
Manual de referencia de JavaScript- Jorge Snchez 2003 13

<SCRIPT LANGUAGE=JavaScript>
<!--
function doblar(valor) {
return valor * 2;
//-->
</SCRIPT>
<BODY>
<SCRIPT LANGUAGE=JavaScript>
document.write(El doble de 100 es ,doble(100));
</SCRIPT>
</BODY>
</HTML>

En este caso la funcin doblar(), posee un argumento (valor), el cual es necesario ya


que esta funcin calcula el doble de ese nmero. Adems esta funcin devuelve un
valor que el cdigo puede utilizar, eso lo realiza la instruccin return, la cual sirve
para regresar un valor que el cdigo puede mostrar o asignar a una variable.

funciones predefinidas
JavaScript trae consigo muchas funciones predefinidas. Sealamos aqu algunas de
las ms importantes:

eval(textoCdigo ). La funcin eval tiene un nico parmetro que es una


cadena de texto. Esta funcin hace que el texto sea interpretado como si fuera
cdigo normal de JavaScript. Ejemplo:
eval(alert(Hola));

parseInt(textoNmero, base). Convierte el texto (que debe tener cifras


numricas) a formato de nmero. El segundo parmetro es opcional y representa
la base del nmero, ejemplo:
alert(parseInt(110011,2));//Sale 51

Si la conversin no es posible, devuelve el valor NaN (Not a Number) que indica


que la variable numrica posee un valor invlido

parseFloat(textoNmero). Convierte el texto (que debe tener cifras


numricas) a formato de nmero con decimales.

escape(texto). Muestra el cdigo ASCII de los smbolos del texto. Cada nmero
en el resultado va precedido del smbolo % y el cdigo ASCII sale en forma
Hexadecimal.

unescape(texto). Hace justo lo inverso del anterior. Devuelve los cdigos que
representan los cdigos ASCII en forma de texto que se le pasa como parmetro.
Ejemplo:

13
Manual de referencia de JavaScript- Jorge Snchez 2003 14

document.write(unescape(%21%B1));
// Escribe:

isNaN(expresin). Devuelve true si la expresin tiene un contenido no


numrico.

objetos
Los objetos son una de las bases fundamentales de JavaScript. Un objeto es una
agrupacin de variables, que en ese caso se llaman propiedades, y de funciones, las
cuales se llaman mtodos. Las propiedades definen las caractersticas de los objetos
y los mtodos las operaciones que podemos hacer con l.
JavaScript posee muchos objetos predefinidos y tambin permite crear nuestros
propios objetos.

propiedades
Como ya se coment anteriormente, los objetos poseen propiedades asociadas, para
acceder a ellas se utiliza el punto, en esta forma:
objeto.propiedad

Ejemplo, un objeto llamado miordenador que representa a un ordenador:


miordenador.marca=HP;
miordenador.procesador=pentium III 900 Mhz
miordenador.ram=64;

Las propiedades pueden ser de distintos tipos de datos; en el ejemplo la propiedad


ram es numrica, mientras que marca es de tipo texto.

mtodos
Los mtodos son funciones asociadas a los objetos. Su uso es:
objeto.metodo()

Donde el mtodo adems puede poseer parmetros.

operacin new
La instruccin new sirve para crear nuevos objetos en el tiempo de ejecucin del
cdigo JavaScript. Ejemplo:
miordenador = new ordenador(HP, Pentium III, 64);

En este caso mi ordenador es un nuevo objeto de tipo ordenador, al indicar el tipo


de objeto que es, se le pueden pasar parmetros para rellenar sus propiedades.

14
Manual de referencia de JavaScript- Jorge Snchez 2003 15

objetos predefinidos

string
El objeto string sirve para manejar cadenas de texto. Cada vez que creamos una
variable de cadena, en realidad estamos creando una variable de tipo string. Por lo
tanto no ser necesaria su declaracin.

Mtodos de String

anchor(nombre). Crea un marcador en el texto.

big(). Muestra la cadena de caracteres con una fuente grande.

blink(). Muestra el texto de modo intermitente.

bold().Muestra el texto en negrita.

charAt(n). Muestra el carcter situado en la posicin n de la cadena.

fixed(). Muestra la cadena en fuente no proporcional.

fontcolor(color). Determina el color del texto.

fontsize(n). Muestra el texto en el tamao n, donde n es un nmero del 1 al 7


(los 7 tamaos estndar).

indexOf(cadenaInterna,inicio). Devuelve la posicin de la cadena interna


en el texto, teniendo en cuenta que el primer carcter es el nmero 0. El primer
parmetro es el texto que se busca; el segundo es opcional e indica desde qu
posicin del texto comenzamos a buscar. Si no se encuentra la cadena interna, se
devuelve el valor 1. Ejemplo:
var cadena=Miguel Indurain
var subcadena=Indurain
alert(cadena.indexOf(subcadena))
/*El resultado ser 7, ya que la primera posicin del
texto (en este caso la M) es la 0.

italics(). Muestra el texto en cursiva.

lastIndexOf(cadenaInterna,inicio). Idntico a indexOf slo que en este


caso cuenta la ltima vez que aparece la cadena (en lugar de la primera vez como
hace indexOf).

link(URL). Crea un hipervnculo en la cadena de texto, el parmetro URL


indica el destino del vnculo.

small(). El texto se muestra con fuente pequea.

strike(). Subraya el texto.

15
Manual de referencia de JavaScript- Jorge Snchez 2003 16

sub(). El texto va en subndice.

substring(x,y). Muestra el fragmento de texto que va desde la posicin x a la


posicin y. Ejemplo:
var cadena="Migueln Indurain";
var subcadena="Indurain";
alert(cadena.substring(5,11));
//Sale ln In

sup(). Superndice.

toLowerCase(). Convierte la cadena a minsculas.

toUpperCase().Convierte la cadena a maysculas.

Propiedades de string

length. Almacena el tamao de la cadena de texto.

Math
El objeto Math tiene propiedades y mtodos que representan valores matemticos.

mtodos de math

abs(n). Calcula el valor absoluto de n.

acos(n). Calcula el arco coseno de n.

asin(n). Calcula el arco seno de n.

atan(n). Calcula el arco tangente de n.

ceil(n). Redondea n a su valor superior.

cos(n). Calcula el coseno de n.

exp(n). Calcula en.

floor(n). Redondea n a su valor inferior.

log(n). Calcula el logaritmo de n.

max(x,y). Devuelve el mayor valor de x o y.

min(x,y). Devuelve el menor valor de x o y.

pow(x,y). Devuelve el xy.

random(). Genera un nmero aleatorio entre 0 y 1. Ejemplo:


alert(Math.random())
// Podra devolver por ejemplo 0.239230812349

16
Manual de referencia de JavaScript- Jorge Snchez 2003 17

round(n). Redondea n a el nmero ms prximo.

sin(n). Calcula el seno de n.

sqrt(n). Calcula la raz cuadrada de n.

tan(n). Calcula la tangente de n.

propiedades de math

E. Devuelve la constante de Euler o nmero e.

LN2. Devuelve el logaritmo neperiano de 2.

LN10. Devuelve el logaritmo neperiano de 10.

LOG2E. Logaritmo en base 2 de e.

LOG10E. Logaritmo en base 10 de e.

PI. Devuelve el nmero PI.

SQRT1_2. Raz cuadrada de 0,5.

SQRT2. Raz cuadrada de 2.

objeto Date()
Este objeto representa fechas y horas. JavaScript no permite trabajar con fechas
anteriores a 1970, ya que desde ese momento es cuando comienza a contar las fechas
en milisegundos. En los meses, el mes 0 ser Enero, y el mes 11 es Diciembre. Los das
de la semana y del mes se cuentan desde el nmero 1 (Jueves = 4).
Para crear una variable de fecha se puede hacer de esta manera:
fecha=new Date();
//crea un nuevo objeto de fecha cuyo valor inicial sern
//la fecha y hora actuales

Si se desea iniciar una variable de fecha con valores distintos a la fecha actual, se
debe:
fecha=new Date(ao, mes, da, hora, minutos, segundos);

Todos los parmetros se pasan en forma de nmeros. Tambin se puede crear un


objeto de tipo fecha asignando el nmero de milisegundos desde 1970.

mtodos de los objetos date()

getDate(). Devuelve el da del mes.

getDay(). Devuelve el da de la semana en forma de nmero.

17
Manual de referencia de JavaScript- Jorge Snchez 2003 18

getFullYear(). Devuelve el ao, pero en forma de 4 nmeros. Con esto se


asegura la compatibilidad con el ao 2000. Est funcin se aadi al JavaScript
1.3, por lo que ciertos navegadores no podrn usarla.

getHours(). Devuelve la hora.

getMinutes(). Devuelve los minutos.

getMonth(). Devuelve el mes (con nmeros del 0 al 11).

getSeconds(). Devuelve los segundos.

getTime(). Devuelve el nmero de milisegundos de la fecha, empezando a


contar desde 1970.

getTimezoneOffset(). Devuelve la diferencia en minutos entre la zona horaria


actual y la hora solar (GMT).

getYear(). Devuelve el ao.

setDate(valor). Establece el da del mes.

setFullYear(valor). Establece el ao (con cuatro cifras).

setHours(valor). Establece la hora.

setMinutes(valor). Establece los minutos.

setMonth(valor). Establece el mes (con un nmero del 1 al 11).

setSeconds(valor). Establece los segundos.

setTime(valor). Establece la fecha con el nmero de milisegundos desde el 1


de Enero de 1970.

setYear(valor). Establece el ao.

toLocaleString(). Devuelve la fecha en formato de texto, segn las


especificaciones de la zona horaria del ordenador.

objeto array
Los arrays (matrices) son elementos indispensables en la programacin de
ordenadores. Un array es un conjunto de datos agrupados. Para acceder a cada
elemento individual de el array se usa un nmero de ndice, el primer elemento
tendr el ndice 0. En el caso de los arrays de JavaScript, su uso es muy eficaz y
mucho ms libre que en los lenguajes formales (como Pascal por ejemplo).
Para crear un array se hace:
nombrearray = new Array()

Esto crea un array de tamao indeterminado.

18
Manual de referencia de JavaScript- Jorge Snchez 2003 19

Para rellenar los valores del array:


nombrearray[0] = valor;
nombrearray[1] = valor;
...
nombrearray[n] = valor;

Tras asignar valores el array se hace ms grande. Tambin se puede especificar su


tamao al crearle:
nombreArray= new Array(tamao)

O incluso asignar valores en la propia creacin del array. Ejemplo:


equipos= new Array(Real Madrid, F. C. Barcelona);

Adems un array puede tener distintos tipos de datos:


miOrdenador = new Array(HP, Pentium III, 64);

Y cada elemento de un array puede ser otro array:


elemento = new Array(8);
elemento[3] = new Array(5);

mtodos del objeto array

concat(array). Agrupa dos arrays. Disponible desde la versin 1.2. Ejemplo:


a = new Array(12, 3, 5);
b = new Array(Hola, Adios);
c = a.concat(b);
//c es el array (12, 3, 5, Hola, Adios)

join(). Saca una cadena de texto que contiene todos los elementos del array:
a = new Array(Rojo, Azul, Verde);
b = a.join();
//b contiene Rojo,Azul,Verde

reverse(). Invierte el orden del los elementos de un array. El primero pasa a ser
el ltimo y viceversa.

Sort(). Obtiene la matriz de manera ordenada.

Propiedades del objeto Array

length. Cuenta el nmero de elementos del array.

19
Manual de referencia de JavaScript- Jorge Snchez 2003 20

objetos del navegador

introduccin
Los objetos del navegador son todos aquellos objetos que el navegador pone a nuestra
disposicin para poder modificar los elementos de las pginas.
El problema es que Explorer y Navigator utilizan modelos de objetos distintos. En
este documento slo se comentan los objetos y propiedades comunes. Los objetos
son:

navigator
Objeto que representa al navegador con el que el usuario est mostrando la pgina.
Gracias a este objeto se puede averiguar la marca y versin del navegador y utilizar
esta informacin en el cdigo.

propiedades

appCodeName. Nombre del cdigo del navegador. Todos los navegadores


devuelven la cadena Mozilla. Por lo que esta propiedad no es interesante.

appName. Nombre del navegador. Podr ser: Microsoft Internet Explorer


o Netscape.

appVersion. Versin del navegador. La cadena que devuelve esta propiedad


indica la versin completa. Ejemplos:
Cadena devuelta por appVersion Navegador
4.0 (compatible; MSIE 6.0; Windows NT Explorer 6 para Windows 2000
5.0)
4.0 (compatible; MSIE 5.5; Windows NT Explorer 5.5 para Windows 2000
5.0)
4.0 (compatible; MSIE 6.0; Windows Opera 6 para Windows 2000
2000)
5.0 (Windows; es-ES) Netscape 6 en espaol
4.75 [en] (Windows NT 5.0, U) Netscape 4.75
4.5 [es] C-CCK-MCD (WinNT;I) Netscape 4.5

language o browserLanguage. language es una propiedad que slo


funciona con Netscape, mientras que browserLanguage slo funciona con
Explorer. Pero ambas devuelven el lenguaje del navegador. En ambos casos las
dos primeras letras que devuelven son el lenguaje del navegador (es=Espaol;
en=Ingls, por ejemplo).

platform. Contiene el tipo de sistema operativo del ordenador del usuario.


Win32 indicara un sistema Windows 95/98/Me/NT/2000. Otros valores son:
Win16 (Windows 3.1 y anteriores) Mac68x (McIntosh clsico) MacPPC

20
Manual de referencia de JavaScript- Jorge Snchez 2003 21

(McIntosh Power PC) y varios resultados que empiezan por Unix (sistemas
Unix).

userAgent. Devuelve informacin sobre la versin, cdigo y nombre del


navegador. Su salida no aporta nada nuevo respecto a las anteriores propiedades.
Ejemplos:
Cadena devuelta por userAgent Navegador
Mozilla/4.0 (compatible; MSIE 6.0; Explorer 6 para Windows 2000
Windows NT 5.0)
Mozilla/4.0 (compatible; MSIE 5.5; Explorer 5.5 para Windows 2000
Windows NT 5.0)
Mozilla/4.0 (compatible; MSIE 5.0; Opera 6 para Windows 2000
Windows 2000) Opera 6.0 [es]
Mozilla/5.0 (Windows; U; Windows NT Netscape 6.21 en espaol
5.0; es-ES; rv:0.9.4) Gecko 20011128
Netscape6/6.21
Mozilla/4.75 [en] (Windows NT 5.0, U) Netscape 4.75
Mozilla/4.5 [es] C-CCK-MCD (WinNT;I) Netscape 4.5

screen
Objeto disponible desde la versin 1.2 de JavaScript (navegadores 4 o superiores).
Permite acceder a las propiedades de la pantalla del usuario.

propiedades

width y height. Respectivamente, anchura y altura total de la pantalla.

availWidth y availHeight. Respectivamente, anchura y altura disponible en la


pantalla tras restar la barra de tareas del sistema operativo. Esta medida no es
muy exacta ya que no tiene en cuenta la personalizacin del usuario.

colorDepth. Nmero de bits por pxel que utiliza la pantalla.

window
Este objeto, representa a la ventana en la cual se ve la pgina web. En el caso de que la
pgina tenga marcos, se generan tantos objetos window como marcos haya.

propiedades

closed. Valor booleano que indica si una ventana ha sido cerrada.

defaultStatus. Texto que la barra de estado mostrar cuando se cargue la


pgina web (texto por defecto de la barra de estado).

frames. Array que representa a todos los marcos de la ventana.

21
Manual de referencia de JavaScript- Jorge Snchez 2003 22

history. Es un objeto (se ver ms adelante) que representa las enlaces a las
pginas a las que el visitante haba accedido antes de llegar a la ventana actual.

location. Objeto que almacena informacin sobre el URL de la pgina actual.

name. El nombre de la ventana.

parent. Ventana padre de la actual. Si la actual es un marco, parent ser la


pgina con etiqueta <FRAMESET>.

self. Se refiere a la propia ventana activa.

top. Ventana superior del navegador.

status. Mensaje de la barra de estado.

window. Igual que self.

mtodos

open(URL,nombreVentana,opcionesVentana). Abre una nueva ventana


cuyo contenido se especifica por la URL a una pgina (este parmetro puede
quedar vaco ), se indica un nombre y, opcionalmente, una serie de opciones
entre comillas y separadas por comas. Estas opciones son (Netscape tiene
algunas opciones ms que aqu no hemos listado):

toolbar. Indica con yes o no si se muestra la barra de herramientas.

location. Muestra o no la barra de direccin.

directories. Muestra o no los botones de directorio.

status. Permite mostrar u ocultar la barra de estado.

menubar. Mostrar o no la barra de mens.

scrollbars. Indica si se muestran las barras de desplazamiento.

resizable. Permite ajustar el tamao de la ventana.

width. Ancho de la ventana en pxeles.

height. Altura de la ventana en pxeles.

copyHistory. Permite copiar el historial de pginas recorridas a la nueva


ventana.
Ejemplo:
nuevaVentana=open(,nueva,toolbar=no,menubar=no,
scrollbars=no,location=no,width=180,height=60);

close(). Cierra la ventana.

22
Manual de referencia de JavaScript- Jorge Snchez 2003 23

blur(). Hace la ventana deje de estar activa (a esta accin se la llama perder el
foco).

focus(). Hace que la ventana sea la ventana activa (la que tiene el foco).

setInterval(expresinjavascript,milisegundos).. Crea un temporizador.


El temporizador es un reloj que cada ciertos milisegundos (los que se indiquen
como segundo parmetro, realiza la tarea indicada en el argumento expresin. La
expresin es cdigo JavaScript el cual se coloca entre comillas, normalmente este
cdigo es simplemente la invocacin a una funcin. este funcin devuelve un
nmero de temporizador (ya que se pueden crear varios) el cual deber
almacenarse en una variable para posteriores manipulaciones. Ejemplo:
var tempID;
tempID=setInterval(dibujaCirculo();,1000ms);
//Hace que cada segunda se llame a la funcin
dibujaCirculo().

clearInterval(idTemporizador). Cancela el tiempo de espera establecido


mediante setInterval.. Al llamar a este mtodo hay que indicar como
parmetro el nmero de temporizador que se desea detener.

setTimeout(expresinjavascript,milisegundos). Muy similar a


setInterval. Cuando pasan los milisegundos invocados, se ejecuta el cdigo del
parmetro expresinJavascript (el cual va entre comillas). La diferencia con
setInterval es que en este caso slo se usa el cdigo una vez, no continuamente
como ocurre con setInterval. El mtodo devuelve un nmero que debe
almacenarse en una variable.

clearTimeout(idTimeOut). Anula el temporizador establecido anteriormente


con setTimeOut.

alert(), confirm(), prompt(). Mtodos de mensajes (vistos en tema anterior).

location
Objeto incluido dentro del objeto window. Almacena informacin sobre la
localizacin de la pgina de la ventana y por tanto permite cambiar dinmicamente la
pgina web que se est mostrando.

propiedades

href. Especifica la direccin URL de la ventana (por ejemplo:


http://www.uva.es/problemas/ex1.htm#marca1)

hostname. Especifica la parte del URL en la que va el nombre del host


(www.uva.es)

host. Idntico al anterior, slo que al final se indica el nmero de puerto


utilizado (www.uva.es:80)

23
Manual de referencia de JavaScript- Jorge Snchez 2003 24

pathname. Especifica la parte del URL en la que va la ruta al recurso (en el


ejemplo: /problemas/ex1,htm)

port. Puerto utilizado para mostrar la pgina (generalmente el 80).

hash. Indica qu marcador de la pgina se utiliz al abrir la misma, si no se us


ninguno aparece vaco (en el ejemplo sera marca1).

protocol. Parte referida al protocolo de la URL (en el ejemplo http).

search. La parte de una URL que va detrs del signo ?. Slo ciertas pginas
llevan este signo (en concreto las pginas que llaman a CGIs).

mtodos

replace(URL). Carga una nueva pgina en la ventana actual indicando su URL


entre comillas y adems tambin reemplaza a la pgina anterior en la lista del
historial. Esto ltimo es la nica diferencia entre usar este mtodo y cambiar la
direccin directamente en la propiedad href del objeto location.

reload(). Hace que se vuelva a recargar la pgina.

document
Este objeto representa al contenido de una pgina web. Est incluido dentro del
objeto window.

propiedades

bgColor. Color del fondo

fgColor. Color del texto.

linkColor. Color de los enlaces normales.

vlinkColor. Color de los enlaces visitados

alinkColor. Color de los enlaces activos.

images. Array que contiene todas las imgenes del documento. El ndice del
array empieza por 0, la imagen document.images[0] ser la primera que se
utiliz en el cdigo. Ejemplo:
document.images[0].src =grafico2.gif
//Hace que la primera imagen muestre el grfico
//grafico2.gif

Tambin se puede usar cada imagen en lugar de por el nmero, por el nombre
(atributo NAME de la etiqueta IMG). Ejemplo:
document.images[imagen1}.src=grafico2.gif

24
Manual de referencia de JavaScript- Jorge Snchez 2003 25

//imagen1 debe ser el nombre exacto de la imagen a


//cambiar.

links. Array que contiene todos los enlaces que usan el atributo HREF. El orden
de los enlaces en la matriz es el orden de uso en el cdigo (el primer enlace en el
cdigo ser document.links[0].) Ejemplo:
document.links[0].href =http://www.hola.com
//hace que el primer enlace del documento apunte a la
direccin www.hola.com

lasModified. Fecha de ltima actualizacin del documento en forma de cadena


de texto. Algunos servidores no proporcionan este dato.

URL. URL del documento. Es idntico a utilizar location.href.

cookie. Escribe o lee el archivo de cookies de la pgina web. Un archivo de


cookies sirve para guardar informacin sobre el usuario en su propia mquina,
con esta propiedad se permite hacerlo

mtodos

clear(). Borra el documento.

write(textoHTML). Escribe el texto indicado en el documento. Ese texto puede


contener si se desea etiquetas HTML

writeln(textoHTML). Lo mismo que la anterior, slo que esta aade un salto


de lnez tras escribir el texto.

close(). Cierra el documento.

history
Objeto que representa a las direcciones de las pginas que se almacenan en el
historial del navegador. Este objeto est dentro del objeto window.

propiedades

length. Nmero de pginas almacenadas actualmente en el historial.

mtodos

back(). Hace que la ventana muestre la pgina visitada anteriormente.

forward(). Hace que la ventana muestre la pgina siguiente.

go(n). Hace que se muestre la pgina del historial indicada con un nmero. De
modo que history.go(-1) muestra la pgina anterior y history.go(-3) hace que
se muestre la pgina antepenltima.

25
Manual de referencia de JavaScript- Jorge Snchez 2003 26

image
Objeto que representa una imagen en el documento definida con la etiqueta HTML
<IMG> o con el cdigo JavaScript new Image. Todas las imgenes del documento
estn contenidas en la matriz de imgenes document.images (ver anteriormente).

propiedades
Son las mismas que los atributos de la etiqueta IMG del HTML, por eso slo se
comentan:

border

height

hspace

lowsrc

name

src

vspace

width

Ejemplo:
var imagenAtras = new image(120,87);
//nueva imagen con ancho=120 y altura=87
imagenAtras.src=dibujogris.gif;
//la imagen muestra el archivo dibujogris.gif

link
Representa cada enlace de la pgina creado con la etiqueta A. El array
document.links contiene todos los enlaces del documento, de forma que
document.links[0] ser el primer enlace escrito en el cdigo.

propiedades

href. Especifica la direccin URL de Internet del enlace (por ejemplo:


http://www.uva.es/problemas/ex1.htm#marca1)

hostname. Especifica la parte del URL en la que va el nombre del host


(www.uva.es)

host. Idntico al anterior, slo que al final se indica el nmero de puerto


utilizado (www.uva.es:80)

pathname. Especifica la parte del URL en la que va la ruta al recurso (en el


ejemplo: /problemas/ex1,htm)

26
Manual de referencia de JavaScript- Jorge Snchez 2003 27

port. Puerto utilizado para mostrar la pgina (generalmente el 80).

hash. Indica qu marcador de la pgina se utiliz al abrir la misma, si no se us


ninguno aparece vaco (en el ejemplo sera marca1).

protocol. Parte referida al protocolo de la URL (en el ejemplo http).

search. La parte de una URL que va detrs del signo ?. Slo ciertas pginas
llevan este signo (en concreto las pginas que llaman a CGIs).

target. Indica el destino del enlace (propiedad TARGET de la etiqueta A),


interesante sobre todo si la ventana tiene marcos.

27
Manual de referencia de JavaScript- Jorge Snchez 2003 28

eventos

introduccin
Un evento es un suceso que ocurre cuando el usuario realiza alguna accin. Por
ejemplo cuando el usuario pasa el ratn encima de un objeto de la pgina, cuando
pulsa una tecla,... Incluso algunos eventos no los produce el usuario, sino el
navegador, como por ejemplo la carga de la pgina.
Los eventos se colocan en etiquetas de HTML (no todas tienen capacidad para
capturar eventos y adems nuevamente no son las mismas en Netscape que en
Explorer), de esta forma:
<etiquetaHTML atributos...
nombredeEvento=expresinJavaScript>+

De tal forma que cuando se produce el evento en cuestin, se ejecuta el cdigo en


JavaScript que est entre comillas. Ejemplo:
<A HREF=cities.htm onMouseClick=alert(Pulsaste!);>
//Cuando el usuario pulsa en el mensaje, aparece un cuadro
//de alerta que pone Pulsaste!

lista de eventos
Los eventos son iguales en Netscape y en Explorer, sin embargo no se aplican a los
mismos objetos, hay ms objetos en Explorer que en Netscape que permiten capturar
eventos. La lista slo incluye los compatibles en ambos.

onClick
Se produce cuando el usuario hace clic en el objeto. Slo los vnculos y los botones de
los formularios permiten capturar este evento en ambos navegadores.

onDblClick
Se genera cuando el usuario hace doble clic con el ratn. Slo los vnculos admiten
este evento en ambos navegadores.

onMouseOver
Se produce cuando el usuario pasa el cursor por encima del objeto. Slo los vnculos
permiten este evento en ambos navegadores.

onMouseOut
Ocurre cuando el usuario abandona el objeto. Slo los vnculos permiten este evento
en ambos navegadores.

28
Manual de referencia de JavaScript- Jorge Snchez 2003 29

onMouseDown
Se produce cuando el usuario mantiene pulsado el botn principal del ratn a la vez
que se sita encima de un objeto. Funciona en los vnculos, en los botones y en las
imgenes.

onMouseUp
Ocurre cuando el usuario levanta el botn del ratn. Funciona en los mismos casos
que el anterior.

onMouseMove
Sucede cuando el usuario mueve el ratn. En Netscape ninguna etiqueta lo admite.

onKeyDown, onKeyPress y onKeyUp


Ocurren respectivamente cuando el usuario pulsa una tecla, cuando la mantiene
pulsada y cuando la suelta. Tienen poca utilidad y pocas etiquetas los admiten.

onLoad
Se produce cuando la pgina se est cargando. La etiqueta BODY es la idnea para
este evento.

onUnload
Se produce cuando la pgina se est descargando, porque se est cargando otra o
porque se cierra el navegador. La etiqueta BODY es la idnea para este evento.

onResize
Ocurre cuando se cambia el tamao de la ventana. La etiqueta BODY o la FRAME son
las que manejan este evento.

onBlur
Se produce cuando un objeto pierde el foco (deja de ser el objeto activo). La etiqueta
BODY, los botones, cuadros de formulario y los enlaces admiten esta propiedad.

onFocus
Sucede cuando un objeto gana el foco (pasa a ser el objeto activo). La etiqueta BODY,
los botones, cuadros de formulario y los enlaces admiten esta propiedad.

onAbort
Se produce si el usuario pulsa el botn Detener mientras se estaba cargando una
imagen. La etiqueta IMG es la que maneja este evento.

onError
Se produce cuando ocurre un error. Casi todas lo permiten, no obstante su uso no
parece muy interesante.

29
Manual de referencia de JavaScript- Jorge Snchez 2003 30

onChange
Se produce cuando el usuario cambia el contenido de un cuadro de texto de un
formulario.

onSelect
Ocurre cuando el usuario selecciona texto de un cuadro del formulario.

onSubmit
Ocurre cuando un formulario es enviado a su servidor. Es pues un evento de la
etiqueta FORM.

onReset
Sucede cuando un formulario es anulado mediante su botn Reset. Es pues un
evento de la etiqueta FORM.

30

También podría gustarte