Documentos de Académico
Documentos de Profesional
Documentos de Cultura
¡Ups!, ¡JavaScript!, Y
Ahora: ¿Qué Hago?
Guía de Estudio
Por Hansel Colmenarez, TSU en
Informática.
1 era. Edición
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Fundación Interware
Presidente de Interware.
1
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Prólogo.
2
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Orden
del Concepto Pagina
concepto
Conceptos de Algoritmo, Programa y
1
Lenguaje de Programación.
2 Qué es JavaScript?
3 Variables.
Estructuras secuenciales de
5
programación.
11 Estructuras switch.
13 Concepto de acumulador.
16 Funciones
3
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
20 Clase Date
33 Evento onLoad
34 El objeto window.
4
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
6
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Qué es JavaScript?
JavaScript, al igual que Flash, Visual Basic
Script, es una de las múltiples maneras que han
surgido para extender las capacidades del lenguaje
HTML (lenguaje para el diseño de páginas de
Internet). Al ser la más sencilla, es por el momento
la más extendida. JavaScript no es un lenguaje de
programación propiamente dicho como C, C++,
Delphi, etc. Es un lenguaje script u orientado a
documento, como pueden ser los lenguajes de
macros que tienen muchos procesadores de texto y
planillas de cálculo. No se puede desarrollar un
programa con JavaScript que se ejecute fuera de un
Navegador. JavaScript es un lenguaje interpretado
que se embebe en una página web HTML. Un
lenguaje interpretado significa que a las
instrucciones las analiza y procesa el navegador en
el momento que deben ser ejecutadas.
Nuestro primer programa será el famoso
"Hola Mundo", es decir un programa que muestre
en el documento HTML el mensaje "Hola Mundo".
7
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 document.write('Hola Mundo');
7 </script>
8 </body>
9 </html>
8
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
9
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
3 </head>
4 <body>
5 <script language="javascript">
6 document.write('Hola Mundo');
7 </script>
8 </body>
9 </html>
Problemas.
Realizar un programa que muestre su
nombre y su edad en una página HTML.
Emplear el comando write del objeto document para
imprimir.
Tener en cuenta que si queremos que cada
dato quede en una fila distinta de la página debemos
insertar la marca <br> (salto de linea en HTML), es
decir debemos disponer: document.write('<br>')
10
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Variables.
Una variable es un depósito donde hay un
valor. Consta de un nombre y pertenece a un tipo
(númerico, cadena de caracteres, etc.).
Tipos de variable:
Una variable puede almacenar:
Valores Enteros (100, 260, etc.)
Valores Reales (1.24, 2.90, 5.00, etc.)
Cadenas de caracteres ("Juan", "Compras",
"Listado", etc.)
Valores lógicos (true,false)
Existen otros tipos de variables que veremos
más adelante.
Las variables son nombres que ponemos a
los lugares donde almacenamos la información. En
JavaScript, deben comenzar por una letra o un
subrayado (_), pudiendo haber además dígitos entre
los demás caracteres. Una variable no puede tener el
mismo nombre de una palabra clave del lenguaje.
Una variable se define anteponiéndole la
palabra clave var:
var dia;
11
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
12
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
13
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
14
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
var edad=10;
var nombre='juan';
Es de tipo cadena.
Document.Write(nombre);
15
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problema.
Confeccionar una programa en JavaScript que
defina e inicialice una variable real donde
almacenar el sueldo de un operario y otra de
tipo cadena de caracteres donde
almacenaremos el nombre. Imprimir cada
variable en una línea distinta en pantalla.
16
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
17
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
17 </html>
18
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problema.
Confeccionar un programa que permita
cargar el nombre de un usuario y su mail por
teclado. Mostrar posteriormente los datos en la
página HTML.
19
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
20
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
18 </body>
19 </html>
21
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
22
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
Realizar la carga del lado de un cuadrado,
mostrar por pantalla el perímetro del mismo (El
perímetro de un cuadrado se calcula multiplicando
el valor del lado por cuatro).
Escribir un programa en el cual se ingresen
cuatro números, calcular e informar la suma de los
dos primeros y el producto del tercero y el cuarto.
Realizar un programa que lea cuatro valores
numéricos e informar su suma y producto.
Se debe desarrollar un programa que pida el
ingreso del precio de un artículo y la cantidad que
lleva el cliente. Mostrar lo que debe abonar el
comprador.
23
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
24
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
25
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
11 {
12 document.write(nombre+' esta aprobado con
un '+nota);
13 }
14 </script>
15 </body>
16 </html>
> mayor
>= mayor o igual
< menor
<= menor o igual
!= distinto
== igual
26
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
document.write(nombre);
document.write(' esta aprobado con un ');
document.write(nota);
27
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 <script language="javascript">
6 var nombre;
7 var nota;
8 nombre=prompt('Ingrese nombre:','');
9 nota=prompt('Ingrese su nota:','');
10 if (nota>=4)
11 {
12 document.write(nombre+' esta aprobado con
un '+nota);
13 }
14 </script>
15 </body>
16 </html>
Problemas.
Se ingresan tres notas de un alumno, si el
promedio es mayor o igual a siete mostrar el
mensaje 'Promocionado'. Tener en cuenta que
para obtener el promedio debemos operar
suma=nota1+nota2+nota3; y luego hacer
promedio=suma/3;
Solicitar que se ingrese dos veces una clave.
Mostrar un mensaje si son iguales (tener en
cuenta que para ver si dos variables tienen el
mismo valor almacenado debemos utilizar el
operador ==).
28
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 var num1,num2;
7 num1=prompt('Ingrese el primer
29
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
8 número:','');
9 num2=prompt('Ingrese el segundo
10 número:','');
11 num1=parseInt(num1);
12 num2=parseInt(num2);
13 if (num1>num2)
14 {
15 document.write('el mayor es '+num1);
16 }
17 else
18 {
19 document.write('el mayor es '+num2);
20 }
21 </script>
22 </body>
23 </html>
30
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
31
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
32
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas
Realizar un programa que lea por teclado
dos números, si el primero es mayor al segundo
informar su suma y diferencia, en caso contrario
informar el producto y la división del primero
respecto al segundo.
Se ingresan tres notas de un alumno, si el
promedio es mayor o igual a 4 mostrar un
mensaje 'regular', sino 'reprobado'.
Se ingresa por teclado un número positivo
de uno o dos dígitos (1..99) mostrar un mensaje
indicando si el número tiene uno o dos dígitos
(recordar de convertir a entero con parseInt para
preguntar posteriormente por una variable
entera).Tener en cuenta qué condición debe
cumplirse para tener dos dígitos, un número
entero.
33
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Solución:
1 <html>
2 <head>
3 </head>
4 <body>
34
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 <script language="javascript">
6 var nota1,nota2,nota3;
7 nota1=prompt('Ingrese 1ra. nota:','');
8 nota2=prompt('Ingrese 2da. nota:','');
9 nota3=prompt('Ingrese 3ra. nota:','');
10 //Convertimos los 3 string en enteros
11 nota1=parseInt(nota1);
12 nota2=parseInt(nota2);
13 nota3=parseInt(nota3);
14 var pro;
15 pro=(nota1+nota2+nota3)/3;
16 if (pro>=7)
17 {
18 document.write('promocionado');
19 }
20 else
21 {
22 if (pro>=4)
23 {
24 document.write('regular');
25 }
26 else
27 {
28 document.write('reprobado');
29 }
30 }
31 </script>
32 </body>
33 </html>
35
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
36
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
/*
linea de comentario 1.
linea de comentario 2.
etc.
*/
37
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
12 nota2=parseInt(nota2);
13 nota3=parseInt(nota3);
14 var pro;
15 pro=(nota1+nota2+nota3)/3;
16 if (pro>=7)
17 {
18 document.write('promocionado');
19 }
20 else
21 {
22 if (pro>=4)
23 {
24 document.write('regular');
25 }
26 else
27 {
28 document.write('reprobado');
29 }
30 }
31 </script>
32 </body>
33 </html>
38
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
1 - Se cargan por teclado tres números
distintos. Mostrar por pantalla el mayor de ellos.
39
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
40
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
41
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 <script language="javascript">
6 var num1,num2,num3;
7 num1=prompt('Ingrese primer número:','');
8 num2=prompt('Ingrese segundo número:','');
9 num3=prompt('Ingrese tercer número:','');
10 num1=parseInt(num1);
11 num2=parseInt(num2);
12 num3=parseInt(num3);
13 if (num1>num2 && num1>num3)
14 {
15 document.write('el mayor es el '+num1);
16 }
17 else
18 {
19 if (num2>num3)
20 {
21 document.write('el mayor es el '+num2);
22 }
23 else
24 {
25 document.write('el mayor es el '+num3);
26 }
27 }
28 </script>
29 </body>
30 </html>
42
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
43
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
44
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
29 </body>
30 </html>
Problemas.
1 - Realizar un programa que pida cargar
una fecha cualquiera, luego verificar si dicha fecha
corresponde a Navidad.
2 - Se ingresan tres valores por teclado, si
todos son iguales se imprime la suma del primero
con el segundo y a este resultado se lo multiplica
por el tercero (tener en cuenta que puede haber tres
condiciones simples)
3 - Se ingresan por teclado tres números, si
todos los valores ingresados son menores a 10,
imprimir en la página la leyenda ' Todos los
números son menores a diez'.
4 - Escribir un programa que pida ingresar la
coordenada de un punto en el plano, es decir dos
valores enteros x e y. Posteriormente imprimir en
pantalla en qué cuadrante se ubica dicho punto. (1º
Cuadrante si x > 0 Y y > 0, 2º Cuadrante: x < 0 Y y
> 0, etc.)
45
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
46
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
47
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 <script language="javascript">
6 var dia,mes,año;
7 dia=prompt('Ingrese día:','');
8 mes=prompt('Ingrese mes:','');
9 año=prompt('Ingrese año:','');
10 dia=parseInt(dia);
11 mes=parseInt(mes);
12 año=parseInt(año);
13 if (mes==1 || mes==2 || mes==3)
14 {
15 document.write('corresponde al primer
trimestre del año.');
16 }
17 </script>
18 </body>
19 </html>
pagina1.html
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 var dia,mes,año;
7 dia=prompt('Ingrese día:','');
8 mes=prompt('Ingrese mes:','');
9 año=prompt('Ingrese año:','');
48
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
10 dia=parseInt(dia);
11 mes=parseInt(mes);
12 año=parseInt(año);
13 if (mes==1 || mes==2 || mes==3)
14 {
15 document.write('corresponde al primer
trimestre del año.');
16 }
17 </script>
18 </body>
19 </html>
Problema
1 - Se ingresan por teclado tres números, si
todos los valores ingresados son menores a 10,
imprimir en la página la leyenda 'Todos los
números son menores a diez'.
49
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Estructuras switch.
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 var valor;
7 valor=prompt('Ingrese un valor
comprendido entre 1 y 5:','');
8 //Convertimos a entero
50
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
9 valor=parseInt(valor);
10 switch (valor) {
11 case 1: document.write('uno');
12 break;
13 case 2: document.write('dos');
14 break;
15 case 3: document.write('tres');
16 break;
17 case 4: document.write('cuatro');
18 break;
19 case 5: document.write('cinco');
20 break;
21 default:document.write('debe ingresar un
valor comprendido entre 1 y 5.');
22 }
23 </script>
24 <A href="pagina2.html">Ver segundo
problema</a>
25 </body>
26 </html>
51
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1. <html>
2. <head>
3. </head>
4. <body>
5. <script language="javascript">
6. var col;
7. col=prompt('Ingrese el color con que se
quiere pintar el fondo de la ventana
8. (rojo, verde, azul)' ,'');
9. switch (col) {
10. case 'rojo': document.bgColor='#ff0000';
11. break;
12. case 'verde': document.bgColor='#00ff00';
13. break;
52
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
53
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
54
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina2.html
1. <html>
2. <head>
3. </head>
4. <body>
5. <script language="javascript">
6. var col;
7. col=prompt('Ingrese el color con que se
quiere pintar el fondo de la ventana
8. (rojo, verde, azul)','');
9. switch (col) {
10. case 'rojo': document.bgColor='#ff0000';
11. break;
12. case 'verde': document.bgColor='#00ff00';
13. break;
14. case 'azul': document.bgColor='#0000ff';
15. break;
16. }
17. </script>
18. </body>
19. </html>
Problemas.
Solicitar el ingreso alguna de estas palabras
(casa, mesa, perro, gato) luego mostrar la palabra
traducida en inglés. Es decir, si se ingresa 'casa'
debemos mostrar el texto 'house' en la página.
55
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
56
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
57
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1. <html>
2. <head>
3. </head>
4. <body>
5. <script language="javascript">
6. var x;
7. x=1;
8. while (x<=100)
9. {
10. document.write(x);
11. document.write('<br>');
12. x=x+1;
13. }
14. </script>
15. </body>
16. </html>
58
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
59
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
60
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
x
1
2
3
4
.
.
100
101
Cuando x vale 101 la condición de la
estructura repetitiva retorna falso, en este caso
finaliza el diagrama.
61
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
62
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
6 var x;
7 x=1;
8 while (x<=100)
9 {
10 document.write(x);
11 document.write('<br>');
12 x=x+1;
13 }
14 </script>
15 </body>
16 </html>
Problema.
1 - Realizar un programa que imprima 25
términos de la serie 11 - 22 - 33 - 44, etc. (No se
ingresan valores por teclado).
2 - Mostrar los múltiplos de 8 hasta el valor
500. Debe aparecer en pantalla 8 -16 -24, etc.
63
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Concepto de acumulador.
Explicaremos el concepto de un acumulador
con el siguiente Ejemplo Práctico #19: Desarrollar
un programa que permita la carga de 5 valores por
teclado y nos muestre posteriormente la suma.
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 var x=1;
7 var suma=0;
8 var valor;
9 while (x<=5)
10 {
11 valor=prompt('Ingrese valor:','');
12 valor=parseInt(valor);
13 suma=suma+valor;
14 x=x+1;
15 }
16 document.write("La suma de los valores es
"+suma+"<br>");
17 </script>
18 </body>
19 </html>
64
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
65
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
66
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
67
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
1 - Escribir un programa que lea 10 notas de
alumnos y nos informe cuántos tienen notas
mayores o iguales a 7 y cuántos menores.
2 - Se ingresan un conjunto de 5 alturas de
personas por teclado. Mostrar la altura promedio de
las personas.
3 - En una empresa trabajan 5 empleados
cuyos sueldos oscilan entre Bs. F. 100 y Bs. F. 500,
realizar un programa que lea los sueldos que cobra
cada empleado e informe cuántos empleados cobran
entre Bs. F. 100 y Bs. F. 300 y cuántos cobran más
de Bs. F. 300. Además el programa deberá informar
el importe que gasta la empresa en sueldos al
personal.
4 - Realizar un programa que imprima 20
términos de la serie 5 - 10 - 15 - 20, etc. (No se
ingresan valores por teclado).
5 - Mostrar los múltiplos de 10 hasta el valor
1500.
Debe aparecer en pantalla 10 - 20 -30 etc.
68
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
69
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
70
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 var valor;
7 do {
8 valor=prompt('Ingrese un valor entre 0 y
999:','');
9 valor=parseInt(valor);
10 document.write('El valor '+valor+' tiene ');
11 if (valor<10)
12 {
13 document.write('Tiene 1 digitos');
14 }
15 else
16 {
17 if (valor<100)
18 {
19 document.write('Tiene 2 digitos');
20 }
21 else
22 {
23 document.write('Tiene 3 digitos');
24 }
25 }
26 document.write('<br>');
27 } while(valor!=0);
28 </script>
29 </body>
30 </html>
71
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
72
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
18 {
19 document.write('Tiene 2 digitos');
20 }
21 else
22 {
23 document.write('Tiene 3 digitos');
24 }
25 }
26 document.write('<br>');
27 } while(valor!=0);
28 </script>
29 </body>
30 </html>
Problemas.
1 - Realizar un programa que acumule
(sume) valores ingresados por teclado hasta ingresa
el 9999 (no sumar dicho valor, solamente indica que
ha finalizado la carga). Imprimir el valor acumulado
e informar si dicho valor es cero, mayor a cero o
menor a cero.
2 - En un banco se procesan datos de las
cuentas corrientes de sus clientes. De cada cuenta
corriente se conoce: número de cuenta, nombre del
cliente y saldo actual. El ingreso de datos debe
73
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
74
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
75
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Sintaxis:
for (<Inicialización> ; <Condición> ;
<Incremento o Decremento>)
{
76
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
<Instrucciones>
}
Funcionamiento:
- Primero se ejecuta por única vez el primer
argumento. Por lo general se inicializa una variable.
77
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
78
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
79
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
10 }
11 </script>
12 </body>
13 </html>
Problemas.
1 - Confeccionar un programa que lea 3
pares de datos, cada par de datos corresponde a la
medida de la base y la altura de un triángulo. El
programa deberá informar:
a) De cada triángulo la medida de su
base, su altura y su superficie.
b) La cantidad de triángulos cuya
superficie es mayor a 12.
80
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
81
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
82
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
83
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Funciones
En programación es muy frecuente que un
determinado procedimiento de cálculo definido por
un grupo de sentencias tenga que repetirse varias
veces, ya sea en un mismo programa o en otros
programas, lo cual implica que se tenga que escribir
tantos grupos de aquellas sentencias como veces
aparezca dicho proceso. La herramienta más potente
con que se cuenta para facilitar, reducir y dividir el
trabajo en programación, es escribir aquellos grupos
de sentencias una sola y única vez bajo la forma de
una FUNCION.
84
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
85
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
86
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
'Cuidado'
'Ingrese su documento correctamente'
'Cuidado'
'Ingrese su documento correctamente'
'Cuidado'
'Ingrese su documento correctamente'
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 document.write("Cuidado<br>");
7 document.write("Ingrese su documento
correctamente<br>");
8 document.write("Cuidado<br>");
9 document.write("Ingrese su documento
correctamente<br>");
10 document.write("Cuidado<br>");
11 document.write("Ingrese su documento
correctamente<br>");
12 </script>
13 </body>
14 </html>
87
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script languaje="javascript">
6 function mostrarMensaje()
7 {
8 document.write("Cuidado<br>");
9 document.write("Ingrese su documento
correctamente<br>");
10 }
11 mostrarMensaje();
12 mostrarMensaje();
13 mostrarMensaje();
14 </script>
15 </body>
16 </html>
88
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
89
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
90
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
19 mostrarComprendidos(valor1,valor2);
20 </script>
21 </body>
22 </html>
91
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
7 {
8 var inicio;
9 for(inicio=x1;inicio<=x2;inicio++)
10 {
11 document.write(inicio+' ');
12 }
13 }
14 var valor1,valor2;
15 valor1=prompt('Ingrese valor inferior:','');
16 valor1=parseInt(valor1);
17 valor2=prompt('Ingrese valor superior:','');
18 valor2=parseInt(valor2);
19 mostrarComprendidos(valor1,valor2);
20 </script>
21 </body>
22 </html>
Problemas.
1 - Elaborar una función a la cual le
enviemos tres enteros y muestre el menor.
2 - Confeccionar una función a la cual le
envíe tres enteros y los muestre ordenados de menor
a mayor.
92
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
93
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
21 return "cinco";
22 else
23 return "valor incorrecto";
24 }
25 var valor;
26 valor=prompt("Ingrese un valor entre 1 y
5","");
27 valor=parseInt(valor);
28 var r;
29 r=convertirCastellano(valor);
30 document.write(r);
31 </script>
32 </body>
33 </html>
94
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
function convertirCastellano(x)
{
switch (x)
{
case 1:return "uno";
case 2:return "dos";
case 3:return "tres";
case 4:return "cuatro";
case 5:return "cinco";
default:return "valor incorrecto";
}
}
95
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6
7 function formatearFecha(dia,mes,año)
8 {
9 var s='Hoy es '+dia+' de ';
10 switch (mes) {
11 case 1:s=s+'enero ';
12 break;
13 case 2:s=s+'febrero ';
14 break;
15 case 3:s=s+'marzo ';
16 break;
17 case 4:s=s+'abril ';
18 break;
19 case 5:s=s+'mayo ';
20 break;
21 case 6:s=s+'junio ';
22 break;
23 case 7:s=s+'julio ';
24 break;
25 case 8:s=s+'agosto ';
26 break;
27 case 9:s=s+'septiembre ';
28 break;
29 case 10:s=s+'octubre ';
30 break;
31 case 11:s=s+'noviembre ';
32 break;
96
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
s=s+'enero ';
97
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
s=s+'de '+año;
98
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
7 {
8 if (x==1)
9 return "uno";
10 else
11 if (x==2)
12 return "dos";
13 else
14 if (x==3)
15 return "tres";
16 else
17 if (x==4)
18 return "cuatro";
19 else
20 if (x==5)
21 return "cinco";
22 else
23 return "valor incorrecto";
24 }
25
26 var valor;
27 valor=prompt("Ingrese un valor entre 1 y
5","");
28 valor=parseInt(valor);
29 var r;
30 r=convertirCastellano(valor);
31 document.write(r);
32 </script>
33 <br>
34 <A href="pagina2.html">Ver segundo
problema</a>
35 </body>
36 </html>
99
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina2.html
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6
7 function formatearFecha(dia,mes,año)
8 {
9 var s='Hoy es '+dia+' de ';
10 switch (mes) {
11 case 1:s=s+'enero ';
12 break;
13 case 2:s=s+'febrero ';
14 break;
15 case 3:s=s+'marzo ';
16 break;
17 case 4:s=s+'abril ';
18 break;
19 case 5:s=s+'mayo ';
20 break;
21 case 6:s=s+'junio ';
22 break;
23 case 7:s=s+'julio ';
24 break;
25 case 8:s=s+'agosto ';
26 break;
27 case 9:s=s+'septiembre ';
28 break;
29 case 10:s=s+'octubre ';
30 break;
100
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
1 - Confeccionar una función a la cual le
envíe tres enteros y retorne el mayor de ellos.
2 - Elaborar una función a la cual le envíe el
valor del lado de un cuadrado y me retorne su
perímetro.
3 - Desarrollar una función que retorne la
cantidad de dígitos que tiene una variable entera
positiva.
4 - Elaborar una función que reciba tres
enteros y retorne el promedio.
101
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
102
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
103
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Propiedades y métodos.
Para acceder a los métodos y propiedades de
un objeto debemos utilizar la siguiente sintaxis:
objeto.propiedad
objeto.metodo(parametros)
Conceptos Básicos.
Objetos
Son todas las cosas con identidad propia. Se
relacionan entre si. Poseen características (atributos)
y tienen responsabilidades (funciones, métodos) que
deben cumplir. Son ejemplares (instancias) de una
clase y conocen a la clase a la cual pertenecen.
Atributos o propiedades
Son las características, cualidades distintivas
de cada objeto. Deben ser mínimos para poder
realizar todas las operaciones que requiere la
aplicación.
104
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
- Ventana:
atributos: tamaño, color, etc.;
responsabilidades: abrirse, cerrarse, etc.
105
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Responsabilidades o Métodos.
Son las responsabilidades que debe cumplir
la clase. El objetivo de un método es ejecutar las
actividades que tiene encomendada la clase. Es un
algoritmo (conjunto de operaciones) que se ejecuta
en respuesta a un mensaje; respuestas a mensajes
para satisfacer peticiones. Un método consiste en el
nombre de la operación y sus argumentos.
106
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Clases
Una clase es una agrupación de objetos que
comparten las mismas propiedades y
comportamientos. Es un molde para objetos que
poseen las mismas características (que pueden
recibir los mismos mensajes y responden de la
misma manera).
107
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
108
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Clase Date
JavaScript dispone de varias clases
predefinidos para acceder a muchas de las funciones
normales de cualquier lenguaje, como puede ser el
manejo de vectores o el de fechas.
109
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
getYear()
setYear(año)
getFullYear()
setFullYear(año)
getMonth()
setMonth(mes)
110
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
getDate()
setDate(dia)
getHours()
setHours(horas)
getMinutes()
setMinutes(minutos)
getSeconds()
setSeconds(segundos)
getDay()
1 <HTML>
111
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
2 <HEAD>
3 <SCRIPT LANGUAGE="JavaScript">
4 function mostrarFechaHora()
5 {
6 var fecha
7 fecha=new Date();
8 document.write('Hoy es ');
9 document.write(fecha.getDate()+'/');
10 document.write((fecha.getMonth()+1)+'/');
11 document.write(fecha.getYear());
12 document.write('<br>');
13 document.write('Es la hora ');
14 document.write(fecha.getHours()+':');
15 document.write(fecha.getMinutes()+':');
16 document.write(fecha.getSeconds());
17 }
18 //Llamada a la función
19 mostrarFechaHora();
20 </SCRIPT>
21 </HEAD>
22 <BODY>
23
24 </BODY>
25 </HTML>
112
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
<nombre de objeto>.<nombre de
método>(parámetros)
113
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
21 </head>
22 <body>
23
24 </body>
25 </html>
114
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Clase Array
Un vector es una estructura de datos que
permite almacenar un CONJUNTO de datos.
1 <HTML>
2 <HEAD>
3 </HEAD>
4 <BODY>
5 <SCRIPT LANGUAGE="JavaScript">
6 function cargar(sueldos)
7 {
8 var f;
9 for(f=0;f<sueldos.length;f++)
10 {
11 var v;
12 v=prompt('Ingrese sueldo:','');
13 sueldos[f]=parseInt(v);
115
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
14 }
15 }
16
17 function calcularGastos(sueldos)
18 {
19 var total=0;
20 var f;
21 for(f=0;f<sueldos.length;f++)
22 {
23 total=total+sueldos[f];
24 }
25 document.write('Listado de sueldos<br>');
26 for(f=0;f<sueldos.length;f++)
27 {
28 document.write(sueldos[f]+'<br>');
29 }
30 document.write('Total de gastos en
31 sueldos:'+total);
32 }
33
34 var sueldos;
35 sueldos=new Array(5);
36 cargar(sueldos);
37 calcularGastos(sueldos);
38
39 </SCRIPT>
40 </BODY>
41 </HTML>
116
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
var sueldos;
sueldos=new Array(5);
cargar(sueldos);
calcularGastos(sueldos);
117
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <HTML>
2 <HEAD></HEAD>
3 <BODY>
4
5 <SCRIPT LANGUAGE="JavaScript">
6
7 function mostrarFecha(meses,dias)
8 {
9 var num;
10 num=prompt('Ingrese número de mes:','');
11 num=parseInt(num);
12 document.write('Corresponde al
13 mes:'+meses[num-1]);
14 document.write('<br>');
15 document.write('Tiene '+dias[num-1]+'
16 días');
17 }
18
19 var meses;
20 meses=new Array(12);
21 meses[0]='Enero';
22 meses[1]='Febrero';
118
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
23 meses[2]='Marzo';
24 meses[3]='Abril';
25 meses[4]='Mayo';
26 meses[5]='Junio';
27 meses[6]='Julio';
28 meses[7]='Agosto';
29 meses[8]='Septiembre';
30 meses[9]='Octubre';
31 meses[10]='Noviembre';
32 meses[11]='Diciembre';
33
34 var dias;
35 dias=new Array(12);
36 dias[0]=31;
37 dias[1]=28;
38 dias[2]=31;
39 dias[3]=30;
40 dias[4]=31;
41 dias[5]=30;
42 dias[6]=31;
43 dias[7]=31;
44 dias[8]=30;
45 dias[9]=31;
46 dias[10]=30;
47 dias[11]=31;
48
49 mostrarFecha(meses,dias);
50 </SCRIPT>
51
52 </BODY>
53 </HTML>
119
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
document.write('Corresponde al
mes:'+meses[num-1]);
120
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
4 <BODY>
5 <SCRIPT LANGUAGE="JavaScript">
6 function cargar(sueldos)
7 {
8 var f;
9 for(f=0;f<sueldos.length;f++)
10 {
11 var v;
12 v=prompt('Ingrese sueldo:','');
13 sueldos[f]=parseInt(v);
14 }
15 }
16 function calcularGastos(sueldos)
17 {
18 var total=0;
19 var f;
20 for(f=0;f<sueldos.length;f++)
21 {
22 total=total+sueldos[f];
23 }
24 document.write('Listado de sueldos<br>');
25 for(f=0;f<sueldos.length;f++)
26 {
27 document.write(sueldos[f]+'<br>');
28 }
29 document.write('Total de gastos en
sueldos:'+total);
30 }
31
32 var sueldos;
33 sueldos=new Array(5);
34 cargar(sueldos);
121
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
35 calcularGastos(sueldos);
36
37 </SCRIPT>
38 <br>
39 <a href="pagina2.html">Segundo
Problema</a>
40 </BODY>
41 </HTML>
pagina2.html
1 <HTML>
2 <HEAD></HEAD>
3 <BODY>
4
5 <SCRIPT LANGUAGE="JavaScript">
6
7 function mostrarFecha(meses,dias)
8 {
9 var num;
10 num=prompt('Ingrese número de mes:','');
11 num=parseInt(num);
12 document.write('Corresponde al
mes:'+meses[num-1]);
13 document.write('<br>');
14 document.write('Tiene '+dias[num-1]+'
días');
15 }
16
17 var meses;
18 meses=new Array(12);
19 meses[0]='Enero';
20 meses[1]='Febrero';
122
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
21 meses[2]='Marzo';
22 meses[3]='Abril';
23 meses[4]='Mayo';
24 meses[5]='Junio';
25 meses[6]='Julio';
26 meses[7]='Agosto';
27 meses[8]='Septiembre';
28 meses[9]='Octubre';
29 meses[10]='Noviembre';
30 meses[11]='Diciembre';
31
32 var dias;
33 dias=new Array(12);
34 dias[0]=31;
35 dias[1]=28;
36 dias[2]=31;
37 dias[3]=30;
38 dias[4]=31;
39 dias[5]=30;
40 dias[6]=31;
41 dias[7]=31;
42 dias[8]=30;
43 dias[9]=31;
44 dias[10]=30;
45 dias[11]=31;
46
47 mostrarFecha(meses,dias);
48
49 </SCRIPT>
50
51 </BODY>
52 </HTML>
123
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas
1 - Desarrollar un programa que permita
ingresar un vector de 8 elementos, e informe:
El valor acumulado de todos los
elementos del vector.
El valor acumulado de los elementos
del vector que sean mayores a 36.
Cantidad de valores mayores a 50.
2 - Realizar un programa que pida la carga
de dos vectores numéricos. Obtener la suma de los
dos vectores, dicho resultado guardarlo en un tercer
vector del mismo tamaño. Sumar componente a
componente.
El tamaño del vector es a elección.
124
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Clase Math
Esta clase no está construida para que
tengamos nuestras variables Math, sino como un
contenedor que tiene diversas constantes (como
Math.E y Math.PI) y los siguientes métodos
matemáticos:
Resultado
Expresión de
Método Descripción del
ejemplo
ejemplo
abs Valor absoluto Math.abs(-2) 2
Funciones
trigonométricas,
sin, cos,
reciben el Math.cos(Math.PI) -1
tan
argumento en
radianes
asin, Funciones
acos, trigonométricas Math.asin(1) 1.57
atan inversas
Exponenciación
exp, log y logaritmo, Math.log(Math.E) 1
base E
Devuelve el
entero más
ceil pequeño mayor Math.ceil(-2.7) -2
o igual al
argumento
floor Devuelve el Math.floor(-2.7) -3
125
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
entero más
grande menor o
igual al
argumento
Devuelve el
entero más
round Math.round(-2.7) -3
cercano o igual
al argumento
Devuelve el
min, menor (o
Math.min(2,4) 2
max mayor) de sus
dos argumentos
Exponenciación,
siendo el primer
argumento la
pow Math.pow(2,3) 8
base y el
segundo el
exponente
sqrt Raíz cuadrada Math.sqrt(25) 5
Genera un valor
aleatorio Ej.
random Math.random()
comprendido 0.7345
entre 0 y 1.
126
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4
5 <body>
6 <script language="JavaScript">
7 var selec=prompt('Ingrese un valor entre 1 y
10','');
8 selec=parseInt(selec);
9 var num=parseInt(Math.random()*10)+1;
10 if (num==selec)
11 document.write('Ganó el número que se
sorteó es el '+ num);
12 else
13 document.write('Lo siento se sorteó el valor
'+num+' y usted eligió el '+selec);
14 </script>
15 </body>
16 </html>
127
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
var num=parseInt(Math.random()*10)+1;
128
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4
5 <body>
6 <script language="JavaScript">
7 var selec=prompt('Ingrese un valor entre 1 y
10','');
8 selec=parseInt(selec);
9 var num=parseInt(Math.random()*10)+1;
10 if (num==selec)
11 document.write('Ganó el número que se
sorteó es el '+ num);
12 else
13 document.write('Lo siento se sorteó el valor
'+num+' y usted eligió el '+selec);
14 </script>
15 </body>
16 </html>
129
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Clase String.
130
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Propiedad length
var nom='Juan';
document.write(nom.length); //Resultado 4
Métodos
charAt(pos): Retorna el caracter del índice
especificado. Comienzan a numerarse de la posición
cero.
var nombre='juan';
var caracterPrimero=nombre.charAt(0);
substring (posinicial, posfinal)
cadena3=cadena1.substring(2,5);
131
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
cadena1=cadena1.toUpperCase();
132
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
cadena1=cadena1.toLowerCase();
1 <html>
2 <head>
3 </head>
4
5 <body>
133
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
6 <script language="JavaScript">
7 var cadena=prompt('Ingrese una cadena:','');
8 document.write('La cadena ingresada
9 es:'+cadena);
10 document.write('<br>');
11 document.write('La cantidad de caracteres
12 son:'+cadena.length);
13 document.write('<br>');
14 document.write('El primer carácter
15 es:'+cadena.charAt(0));
16 document.write('<br>');
17 document.write('Los primeros 3 caracteres
18 son:'+cadena.substring(0,3));
19 document.write('<br>');
20 if (cadena.indexOf('hola')!=-1)
21 document.write('Se ingresó la subcadena
22 hola');
23 else
24 document.write('No se ingresó la subcadena
25 hola');
26 document.write('<br>');
27 document.write('La cadena convertida a
28 mayúsculas
29 es:'+cadena.toUpperCase());
30 document.write('<br>');
31 document.write('La cadena convertida a
32 minúsculas
33 es:'+cadena.toLowerCase());
34 document.write('<br>');
35 </script>
36 </body>
37 </html>
134
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
135
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
30 document.write('<br>');
31 document.write('La cadena convertida a
32 minúsculas
33 es:'+cadena.toLowerCase());
34 document.write('<br>');
35 </script>
36 </body>
37 </html>
136
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
137
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
138
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
139
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Formularios y Eventos.
140
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
141
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5
6 <script language="JavaScript">
7 var contador=0;
8
9 function incrementar()
10 {
11 contador++;
12 alert('El contador ahora vale :' + contador);
13 }
14 </script>
15
16 <form>
17 <input type="button"
18 onClick="incrementar()"
19 value="incrementar">
20 </form>
21 </body>
22 </html>
142
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
143
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
17 <input type="button"
18 onClick="incrementar()"
19 value="incrementar">
20 </form>
21 </body>
22 </html>
Problemas.
Crear un formulario con tres botones
con las leyendas "1", "2" y "3". Mostrar un
mensaje indicando qué botón se presionó.
144
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head></head>
3 <body>
4
5 <script language="JavaScript">
6 function mostrar()
7 {
8 var nom=document.form1.nombre.value;
9 var ed=document.form1.edad.value;
10 alert('Ingreso el nombre:' + nom);
11 alert('Y la edad:' + ed);
145
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
12 }
13 </script>
14
15 <form name="form1">
16 Ingrese su nombre:
17 <input type="text" name="nombre"><br>
18 Ingrese su edad:
19 <input type="text" name="edad"><br>
20 <input type="button" value="Confirmar"
21 onClick="mostrar()">
22 </form>
23
24 </body>
25 </html>
var nom=document.form1.nombre.value;
var ed=document.form1.edad.value;
146
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
147
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas
1 - Crear un programa que permita cargar un
entero en un text y al presionar un botón nos
muestre dicho valor elevado al cubo (emplear la
función alert).
148
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Control PASSWORD
Esta marca es una variante de la de tipo
"TEXT". La diferencia fundamental es que cuando
se carga un texto en el campo de edición sólo
muestra asteriscos en pantalla, es decir, es
fundamental para el ingreso de claves y para que
otros usuarios no vean los caracteres que tipeamos.
1 <html>
2 <head>
3 <script language="javascript">
4 function validar()
5 {
149
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
6 if (document.form1.text1.value.length<5)
7 {
8 alert("ingrese al menos 5 caracteres");
9 document.form1.text1.value="";
10 }
11 }
12 </script>
13 </head>
14 <body>
15 <form name="form1">
16 ingrese clave(al menos 5 caracteres): <input
type="password"
17 name="text1">
18 <input type="button" onclick="validar()"
value="enviar">
19 </form>
20 </body>
21 </html>
document.form1.text1.value
150
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
if (document.form1.text1.value.length<5)
151
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
13 </head>
14 <body>
15 <form name="form1">
16 ingrese clave(al menos 5 caracteres): <input
type="password" name="text1">
17 <input type="button" onclick="validar()"
value="enviar">
18 </form>
19 </body>
20 </html>
Problema
1 - Disponer dos campos de texto tipo
password. Cuando se presione un botón mostrar si
las dos claves ingresadas son iguales o no (es muy
común solicitar al operador el ingreso de dos veces
de su clave para validar si la tipeó correctamente,
esto se hace cuando se crea una password para el
ingreso a un sitio o para el cambio de una
existente).
152
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Control SELECT
Este otro objeto visual que podemos
disponer en un FORM permite realizar la selección
de un string de una lista y tener asociado al mismo
un valor no visible. El objetivo fundamental en
JavaScript es determinar qué elemento está
seleccionado y qué valor tiene asociado. Esto lo
hacemos cuando ocurre el evento OnChange.
document.form1.select1.selectedIndex
153
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
document.form1.select1.options[document.f
orm1.select1.selectedIndex].text
document.form1.select1.options[document.f
orm1.select1.selectedIndex].value
154
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function cambiarColor()
7 {
8 document.form1.text1.value =
9 document.form1.select1.selectedIndex;
10 document.form1.text2.value =
11 document.form1.select1.options[document.
12 orm1.select1.selectedIndex].text;
13 document.form1.text3.value =
14 document.form1.select1.options
15 [document.form1.select1.selectedIndex].va
16 lue;
17 }
18 </script>
19 <form name="form1">
20 <select size="1" name="select1"
21 ONCHANGE="cambiarColor()">
22 <option value="0xff0000">Rojo</option>
23 <option value="0x00ff00">Verde</option>
24 <option value="0x0000ff">Azul</option>
25 </select></p>
26 <br>
27 Número de índice seleccionado del objeto
28 SELECT:<input type="text"
29 name="text1"><br>
30 Texto seleccionado:<input type="text"
31 name="text2"><br>
32 Valor asociado:<input type="text"
155
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
33 name="text3"><br>
34 </form>
35 </body>
36 </html>
156
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
157
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
24 <option value="0x0000ff">Azul</option>
25 </select></p>
26 <br>
27 Número de índice seleccionado del objeto
28 SELECT:<input type="text"
29 name="text1"><br>
30 Texto seleccionado:<input type="text"
31 name="text2"><br>
32 Valor asociado:<input type="text"
33 name="text3"><br>
34 </form>
35 </body>
36 </html>
Problemas.
1 - Confeccionar una página que muestre un
objeto SELECT con distintos tipos de pizzas
(Jamón y Queso, Muzzarella, Morrones). Al
seleccionar una, mostrar en un objeto de tipo TEXT
el precio de la misma.
158
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
159
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
160
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Control CHECKBOX
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function contarSeleccionados()
7 {
8 var cant=0;
9 if (document.form1.lenguaje1.checked)
10 cant++;
11 if (document.form1.lenguaje2.checked)
12 cant++;
13 if (document.form1.lenguaje3.checked)
161
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
14 cant++;
15 if (document.form1.lenguaje4.checked)
16 cant++;
17 alert('Conoce ' + cant + ' lenguajes');
18 }
19 </script>
20 <form name="form1">
21 <input type="checkbox"
22 name="lenguaje1">JavaScript
23 <br>
24 <input type="checkbox"
25 name="lenguaje2">PHP
26 <br>
27 <input type="checkbox"
28 name="lenguaje3">JSP
29 <br>
30 <input type="checkbox"
31 name="lenguaje4">VB.Net
32 <br>
33 <input type="button" value="Mostrar"
34 onClick="contarSeleccionados()">
35 </form>
36 </body>
37 </html>
162
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina1.html
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function contarSeleccionados()
7 {
8 var cant=0;
9 if (document.form1.lenguaje1.checked)
10 cant++;
11 if (document.form1.lenguaje2.checked)
12 cant++;
13 if (document.form1.lenguaje3.checked)
14 cant++;
15 if (document.form1.lenguaje4.checked)
16 cant++;
163
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Problemas.
Confeccionar una página que
muestre tres checkbox que permitan
seleccionar los deportes que practica el
usuario (Futbol, Basket, Tennis) Mostrar al
presionar un botón los deportes que a elegid
164
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Control RADIO
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function mostrarSeleccionado()
7 {
8 if (document.form1.estudios[0].checked)
9 alert('no tienes estudios');
10 if (document.form1.estudios[1].checked)
11 alert('tienes estudios primarios');
12 if (document.form1.estudios[2].checked)
13 alert('tienes estudios secundarios');
14 if (document.form1.estudios[3].checked)
15 alert('tienes estudios universitarios');
16 }
17 </script>
165
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
18 <form name="form1">
19 <input type="radio" name="estudios"
20 value="sin estudios">Sin
21 estudios
22 <br>
23 <input type="radio"
24 name="estudios">Primarios
25 <br>
26 <input type="radio"
27 name="estudios">Secundarios
28 <br>
29 <input type="radio"
30 name="estudios">Universitarios
31 <br>
32 <input type="button" value="Mostrar"
33 onClick="mostrarSeleccionado()">
34 </form>
35 </body>
36 </html>
if (document.form1.estudios[0].checked)
alert('no tienes estudios');
166
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina1.html
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function mostrarSeleccionado()
7 {
8 if (document.form1.estudios[0].checked)
9 alert('no tienes estudios');
10 if (document.form1.estudios[1].checked)
11 alert('tienes estudios primarios');
12 if (document.form1.estudios[2].checked)
13 alert('tienes estudios secundarios');
14 if (document.form1.estudios[3].checked)
15 alert('tienes estudios universitarios');
16 }
17 </script>
18 <form name="form1">
19 <input type="radio" name="estudios"
20 value="sin estudios">Sin estudios
21 <br>
22 <input type="radio"
23 name="estudios">Primarios
167
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
24 <br>
25 <input type="radio"
26 name="estudios">Secundarios
27 <br>
28 <input type="radio"
29 name="estudios">Universitarios
30 <br>
31 <input type="button" value="Mostrar"
32 onClick="mostrarSeleccionado()">
33 </form>
34 </body>
35 </html>
Problema.
168
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Control TEXTAREA
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="JavaScript">
6 function controlarCaracteres()
7 {
8 if(document.form1.curriculum.value.length
169
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
9 2000)
10 alert('curriculum muy largo');
11 else
12 alert('datos correctos');
13 }
14 </script>
15 <form name="form1">
16 <textarea name="curriculum"
17 rows="10" cols="50"
18 ></textarea>
19 <br>
20 <input type="button" value="Mostrar"
21 onClick="controlarCaracteres()">
22 </form>
23 </body>
24 </html>
pagina1.html
1 <html>
2 <head>
3 </head>
4 <body>
170
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 <script language="JavaScript">
6 function controlarCaracteres()
7 {
8 if(document.form1.curriculum.value.length>
9 2000)
10 alert('curriculum muy largo');
11 else
12 alert('datos correctos');
13 }
14 </script>
15 <form name="form1">
16 <textarea name="curriculum" rows="10"
17 cols="50" ></textarea>
18 <br>
19 <input type="button" value="Mostrar"
20 onClick="controlarCaracteres()">
21 </form>
22 </body>
23 </html>
Problema.
171
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
alert(document.form1.comentarios.value);
172
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head></head>
3 <body>
4 <script language="JavaScript">
5 function vaciar(control)
6 {
7 control.value='';
8 }
9 function verificarEntrada(control)
10 {
11 if (control.value=='')
12 alert('Debe ingresar datos');
173
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
13 }
14 </script>
15 <form name="form1">
16 Ingrese su nombre:
17 <input type="text" name="nombre"
18 onFocus="vaciar(this)"
19 onBlur="verificarEntrada(this)"><br>
20 Ingrese su edad:
21 <input type="text" name="edad"
22 onFocus="vaciar(this)"
23 onBlur="verificarEntrada(this)"><br>
24 <input type="button" value="Confirmar">
25 </form>
26 </body>
27 </html>
174
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina1.html
1 <html>
2 <head></head>
3 <body>
4 <script language="JavaScript">
5 function vaciar(control)
6 {
7 control.value='';
8 }
9 function verificarEntrada(control)
10 {
11 if (control.value=='')
12 alert('Debe ingresar datos');
13 }
14 </script>
15 <form name="form1">
16 Ingrese su nombre:
17 <input type="text" name="nombre"
18 onFocus="vaciar(this)"
19 onBlur="verificarEntrada(this)"><br>
20 Ingrese su edad:
21 <input type="text" name="edad"
22 onFocus="vaciar(this)"
23 onBlur="verificarEntrada(this)"><br>
24 <input type="button" value="Confirmar">
175
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
25 </form>
26 </body>
27 </html>
Problema.
Solicitar que se ingrese el nombre y
la clave de un usuario. Mostrar una ventana de
alerta si en la clave se ingresan menos de 7
caracteres o más de 20.
176
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head></head>
3 <body>
4 <script language="JavaScript">
5 function pintar(col)
6 {
7 document.bgColor=col;
8 }
177
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
9 </script>
10 <a href="pagina1.html"
11 onMouseOver="pintar('#ff0000')"
12 onMouseOut="pintar('#ffffff')">Rojo</a>
13 -
14 <a href="pagina1.html"
15 onMouseOver="pintar('#00ff00')"
16 onMouseOut="pintar('#ffffff')">Verde</a>
17 -
18 <a href="pagina1.html"
19 onMouseOver="pintar('#0000ff')"
20 onMouseOut="pintar('#ffffff')">Azul</a>
21 <br>
22 <br>
23 <br>
24 <a href="pagina2.html">ver segundo
25 problema</a>
26 </body>
27 </html>
178
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
function pintar(col)
{
document.bgColor=col;
}
1 <html>
2 <head></head>
3 <body>
4 <script language="JavaScript">
5 function pintar(objeto,col)
6 {
7 objeto.bgColor=col;
8 }
9 </script>
10 <table border="1">
11 <tr>
12 <td onMouseOver="pintar(this,'#ff0000')"
13 onMouseOut="pintar(this,'#ffffff')">rojo</td
14 >
179
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
15 <td onMouseOver="pintar(this,'#00ff00')"
16 onMouseOut="pintar(this,'#ffffff')">verde</
17 td>
18 <td onMouseOver="pintar(this,'#0000ff')"
19 onMouseOut="pintar(this,'#ffffff')">azul</t
20 d>
21 </tr>
22 </table>
23 </body>
24 </html>
<td onMouseOver="pintar(this,'#ff0000')"
onMouseOut="pintar(this,'#ffffff')">rojo</td>
pagina1.html
1 <html>
2 <head></head>
3 <body>
4 <script language="JavaScript">
5 function pintar(col)
180
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
6 {
7 document.bgColor=col;
8 }
9 </script>
10 <a href="pagina1.html"
11 onMouseOver="pintar('#ff0000')"
12 onMouseOut="pintar('#ffffff')">Rojo</a>
13 -
14 <a href="pagina1.html"
15 onMouseOver="pintar('#00ff00')"
16 onMouseOut="pintar('#ffffff')">Verde</a>
17 -
18 <a href="pagina1.html"
19 onMouseOver="pintar('#0000ff')"
20 onMouseOut="pintar('#ffffff')">Azul</a>
21 <br>
22 <br>
23 <br>
24 <a href="pagina2.html">ver segundo
25 problema</a>
26 </body>
27 </html>
28 pagina2.html
29 <html>
30 <head></head>
31 <body>
32 <script language="JavaScript">
33 function pintar(objeto,col)
34 {
35 objeto.bgColor=col;
36 }
37 </script>
181
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
38 <table border="1">
39 <tr>
40 <td onMouseOver="pintar(this,'#ff0000')"
41 onMouseOut="pintar(this,'#ffffff')">rojo</td
42 >
43 <td onMouseOver="pintar(this,'#00ff00')"
44 onMouseOut="pintar(this,'#ffffff')">verde</
45 td>
46 <td onMouseOver="pintar(this,'#0000ff')"
47 onMouseOut="pintar(this,'#ffffff')">azul</t
48 d>
49 </tr>
50 </table>
51 </body>
52 </html>
Problema.
Modificar el segundo problema
resuelto (las casillas de la tabla que cambian
el color cuando ingresamos con el mouse)
para permitir llamar mediante hipervínculos a
distintos programas que administran web-mail
(gmail, hotmail y yahoo).
182
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Evento onLoad
1 <html>
2 <head></head>
3 <body onLoad="activarPrimerControl()">
4 <script language="JavaScript">
5 function activarPrimerControl()
6 {
7 document.form1.nombre.focus();
8 }
9 </script>
10 <form name="form1">
11 Ingrese su nombre:
12 <input type="text" name="nombre"><br>
13 Ingrese su edad:
14 <input type="text" name="edad"><br>
15 <input type="button" value="Confirmar">
16 </form>
183
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
17 </body>
18 </html>
<body onLoad="activarPrimerControl()">
function activarPrimerControl()
{
document.form1.nombre.focus();
}
pagina1.html
1 <html>
2 <head></head>
3 <body onLoad="activarPrimerControl()">
4 <script language="JavaScript">
184
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
5 function activarPrimerControl()
6 {
7 document.form1.nombre.focus();
8 }
9 </script>
10 <form name="form1">
11 Ingrese su nombre:
12 <input type="text" name="nombre"><br>
13 Ingrese su edad:
14 <input type="text" name="edad"><br>
15 <input type="button" value="Confirmar">
16 </form>
17 </body>
18 </html>
Problema.
Confeccionar una función que mueva
la ventana a la coordenada (20,20) cuando se
cargue la página (la función que desplaza la
ventana del navegador a una determinada
coordenada se llama moveTo y tiene dos
parámetros que indican la columna y la fila en
pixeles.
185
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
El objeto window.
186
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
[Variable=][window.]open(URL, nombre,
propiedades): Permite crear (y abrir) una
nueva ventana. Si queremos tener acceso a
ella desde la ventana donde la creamos,
deberemos asignarle una variable, sino
simplemente invocamos el método: el
navegador automáticamente sabrá que
pertenece al objeto window.
187
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
toolbar[=yes|no]
location[=yes|no]
directories[=yes|no]
status[=yes|no]
menubar[=yes|no]
scrollbars[=yes|no]
resizable[=yes|no]
width=pixels
height=pixels
valor=window.prompt("Ingrese valor","");
o
valor=prompt("Ingrese valor","");
188
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 <script language="javascript">
4 function cerrar()
5 {
6 close(); // podemos escribir window.close();
7 }
8
9 function abrir()
10 {
11 var ventana=open();
12 ventana.document.write("Estoy escribiendo
13 en la nueva ventana<br>");
14 ventana.document.write("Segunda linea");
15 }
16
17 function abrirParametros()
18 {
19 var
20 ventana=open('','','status=yes,width=400,hei
21 ght=250,menubar=yes');
22 ventana.document.write("Esto es lo primero
189
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
23 que aparece<br>");
24 }
25
26 function mostrarAlerta()
27 {
28 alert("Esta ventana de alerta ya la utilizamos
29 en otros problemas.");
30 }
31
32 function confirmar()
33 {
34 var respuesta=confirm("Presione alguno de
35 los dos botones");
36 if (respuesta==true)
37 alert("presionó aceptar");
38 else
39 alert("presionó cancelar");
40 }
41
42 function cargarCadena()
43 {
44 var cad=prompt("cargue una cadena:","");
45 alert("Usted ingreso "+cad);
46 }
47
48 </script>
49 </head>
50 <body>
51 Este programa permite analizar la llamada a
52 distintas responsabilidades del
53 objeto window.<br>
54 <form>
190
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina1.html
1 <html>
2 <head>
3 <script language="javascript">
4 function cerrar()
5 {
191
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
192
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
38 else
39 alert("presionó cancelar");
40 }
41
42 function cargarCadena()
43 {
44 var cad=prompt("cargue una cadena:","");
45 alert("Usted ingreso "+cad);
46 }
47
48 </script>
49 </head>
50 <body>
51 Este programa permite analizar la llamada a
52 distintas responsabilidades del
53 objeto window.<br>
54 <FORM>
55 <input type="button" value="close()"
56 onClick="cerrar()">
57 <br><br>
58 <input type="button" value="open()"
59 onClick="abrir()">
60 <br><br>
61 <input type="button" value="open con
62 parámetros"
63 onClick="abrirParametros()" >
64 <br><br>
65 <input type="button" value="alert"
66 onClick="mostrarAlerta()">
67 <br><br>
68 <input type="button" value="confirm"
69 onClick="confirmar()">
193
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
70 <br><br>
71 <input type="button" value="prompt"
72 onClick="cargarCadena()">
73 </form>
74 </body>
75 </html>
Problema.
Confeccionar una página que permita
abrir otra ventana cuando se presiona un
botón. Dicha ventana debe tener como ancho
600 pixeles y alto 300 pixeles, y debe mostrar
el menú y su barra de herramientas
194
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
Tomado de http://www.javascriptya.com.ar/imagenes/dibujo01.jpg
195
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 function verificarMayorEdad()
7 {
8 if (window.confirm('Es mayor de edad?'))
9 window.location='pagina2.html';
10 else
11 window.alert('Cuando sea mayor de edad
12 podrá ingresar');
13 }
14 </script>
15 <a
16 href="javascript:verificarMayorEdad()">Ing
17 resar al sitio para
18 mayores</a>
19 </body>
20 </html>
196
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
<a href="javascript:verificarMayorEdad()">
197
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 <html>
2 <head>
3 <title>Problema</title>
4 </head>
5 <body>
6 Bienvenido al sitio para adultos.
7 </body>
8 </html>
pagina1.html
1 <html>
2 <head>
3 </head>
4 <body>
5 <script language="javascript">
6 function verificarMayorEdad()
7 {
8 if (window.confirm('Es mayor de edad?'))
9 window.location='pagina2.html';
10 else
11 window.alert('Cuando sea mayor de edad
12 podrá ingresar');
13 }
198
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
14 </script>
15 <a
16 href="javascript:verificarMayorEdad()">Ing
17 resar al sitio para mayores</a>
18 </body>
19 </html>
20
21 pagina2.html
22 <html>
23 <head>
24 <title>Problema</title>
25 </head>
26 <body>
27 Bienvenido al sitio para adultos.
28 </body>
29 </html>
Problema.
Confeccionar una página que tenga un
hipervínculo. Cuando se presione dicho
hipervínculo generar un valor aleatorio entre 0 y 2.
Si se genera el 0 llamar al webmail de hotmail, si se
genera un 1 llamar a gmail en caso de generarse un
2 llamar a yahoo.
199
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
var num;
num=Math.random()*3; //se guarda en num
un valor comprendido entre 0.00001 y 2.99999
num=parseInt(num); //guardamos solo la
parte entera de la variable num
if (num==1)
window.location='http://www.hotmail.com';
.....
200
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
201
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
1 function retornarFecha()
2 {
3 var fecha
4 fecha=new Date();
5 var
6 cadena=fecha.getDate()+'/'+(fecha.getMonth
7 ()+1)+'/'+fecha.getYear();
8 return cadena;
9 }
10
11 function retornarHora()
12 {
13 var fecha
14 fecha=new Date();
15 var
16 cadena=fecha.getHours()+':'+fecha.getMinut
17 es()+':'+fecha.getSeconds();
18 return cadena;
19 }
202
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
203
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
pagina1.html
1 <html>
2 <head>
3 <title>Problema</title>
4 <script language="javascript"
5 type="text/javascript"
6 src="pagina2.js"></script>
7 </head>
8 <body>
9 <script language="javascript">
10 document.write('La fecha de hoy
11 es:'+retornarFecha());
12 document.write('<br>');
13 document.write('La hora
14 es:'+retornarHora());
15 </script>
16 </body>
17 </html>
pagina2.js
1 function retornarFecha()
2 {
3 var fecha
4 fecha=new Date();
5 var
6 cadena=fecha.getDate()+'/'+(fecha.getMonth
7 ()+1)+'/'+fecha.getYear();
8 return cadena;
9 }
204
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
10
11 function retornarHora()
12 {
13 var fecha
14 fecha=new Date();
15 var
16 cadena=fecha.getHours()+':'+fecha.getMinut
17 es()+':'+fecha.getSeconds();
18 return cadena;
19 }
Problema.
Confeccionar una funcion en un archivo
externo (*.js) que solicite la carga del
nombre de un usuario y lo retorne.
Luego, otra función que permita ingresar
una clave y la muestre en la página.
205
Todos los Derechos en Reversas, 2013.
¡Ups!, ¡JavaScript!, Y Ahora: ¿Qué Hago?
ATTE.:
206
Todos los Derechos en Reversas, 2013.