10 Introjavascript 140514125351 Phpapp01
10 Introjavascript 140514125351 Phpapp01
Introducción a
12/05/2014
acciones dentro del ámbito de una página web dinámica.
• Una página web dinámica es aquella que incorpora
12/05/2014
JavaScript es una marca registrada de la empresa Sun
Microsystems, como se puede ver en
http://www.sun.com/suntrademarks/.
12/05/2014
comenzaban a incluir formularios complejos.
• Con unas aplicaciones web cada vez más complejas y una
velocidad de navegación tan lenta, surgió la necesidad de un
12/05/2014
iba a lanzarse en 1995. Inicialmente, Eich denominó a su
lenguaje LiveScript.
• Posteriormente, Netscape firmó una alianza con Sun
12/05/2014
lenguaje, la versión 1.1.
• Al mismo tiempo, Microsoft lanzó JScript con su navegador
Internet Explorer 3.
6
Breve Historia
• Para evitar una guerra de tecnologías, Netscape decidió que lo
mejor sería estandarizar el lenguaje JavaScript.
12/05/2014
• De esta forma, en 1997 se envió la especificación JavaScript
1.1 al organismo ECMA European Computer Manufacturers
Association).
12/05/2014
JavaScript.
• De hecho, JavaScript no es más que la implementación que
realizó la empresa Netscape del estándar ECMAScript.
En el mismo
documento
12/05/2014
XHTML
En los
elementos
9
XHTML
Incluir JavaScript en el mismo
documento XHTML
• El código JavaScript se encierra entre etiquetas <script> y se incluye
en cualquier parte del documento. Aunque es correcto incluir
cualquier bloque de código en cualquier zona de la página, se
12/05/2014
recomienda definir el código JavaScript dentro de la cabecera del
documento (dentro de la etiqueta <head>):
<head>
12/05/2014
mediante la etiqueta <script>.
• Se pueden crear todos los archivos JavaScript que sean
necesarios y cada documento XHTML puede enlazar tantos
11
Ejemplo
Incluir JavaScript en los
elementos XHTML
• Este último método es el menos utilizado, ya que consiste en
incluir trozos de JavaScript dentro del código XHTML de la
12/05/2014
página:
<body>
<p>Haga click
12/05/2014
<body>
<noscript>
12/05/2014
• Se distinguen las mayúsculas y minúsculas
• No se define el tipo de las variables
12/05/2014
• Los scripts tampoco pueden cerrar ventanas que no hayan
abierto esos mismos scripts.
• Los scripts no pueden acceder a los archivos del ordenador
12/05/2014
• Otras herramientas de Adobe como Flash y Flex utilizan
ActionScript, un dialecto del mismo estándar de
12/05/2014
• var total = 234.65; // variable tipo decimal
• Cadenas de texto
12/05/2014
• var dia2 = "Martes";
• ...
12/05/2014
• numero1 = numero2;
• Incremento y decremento
19
Operadores Lógicos
• Negación
• var visible = true;
12/05/2014
• alert(!visible); // Muestra "false" y no "true“
• var cantidad = 0;
12/05/2014
valores booleanos.
• El operador se indica mediante el símbolo && y su resultado
12/05/2014
booleanos.
• El operador se indica mediante el símbolo ||y su resultado
variable1 ||
variable1 variable2 Ejemplo
variable2
true true true
| = pipe
true false true
12/05/2014
• resultado = numero1 / numero2; // resultado = 2
• resultado = 3 + numero1; // resultado = 13
12/05/2014
• var numero1 = 5;
• numero1 += 3; // numero1 = numero1 + 3 = 8
24
Operadores Relacionales
• Los operadores relacionales definidos por JavaScript son
idénticos a los que definen las matemáticas:
12/05/2014
• mayor que (>),
• menor que (<),
12/05/2014
• resultado = numero1 > numero2; // resultado = false
• resultado = numero1 < numero2; // resultado = true
26
Operadores Relacionales
• // El operador "=" asigna valores
• var numero1 = 5;
12/05/2014
• resultado = numero1 = 3; // numero1 = 3 y resultado = 3
Ejemplo
27
Estructuras de control de flujo
• Estructura if
if(condicion) {
... }
12/05/2014
var mostrarMensaje = true; var mostrarMensaje = true;
Ejemplo
28
Estructuras de control de flujo
• Estructura if...else
12/05/2014
{... } { alert("Todavía eres muy pequeño"); }
else { ... } else if(edad < 19) { alert("Eres un adolescente"); }
else if(edad < 35) { alert("Aun sigues siendo joven"); }
29
Estructuras de control de flujo
• Estructura for for(inicializacion; condicion; actualizacion)
{ ... }
12/05/2014
var mensaje = "Hola, estoy dentro de un bucle";
for(var i = 0; i < 5; i++)
{ alert(mensaje); }
Ejemplo
30
Estructuras de control de flujo
• Estructura for...in for(indice in array)
{ ... }
12/05/2014
var dias = ["Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado", "Domingo"];
for(i in dias)
{ alert(dias[i]); }
31
Funciones y propiedades
básicas de JavaScript
• Funciones útiles para cadenas de texto
12/05/2014
var mensaje = "Hola Mundo";
var numeroLetras = mensaje.length; // numeroLetras = 10
12/05/2014
var mensaje1 = "Hola";
var mensaje2 = mensaje1.toUpperCase(); // mensaje2 = "HOLA"
12/05/2014
var mensaje = "Holaaaa";
var posicion = mensaje.indexOf('a'); // posicion = 3
posicion = mensaje.indexOf('b'); // posicion = -1
34
Funciones y propiedades
básicas de JavaScript
• Funciones útiles para cadenas de texto
12/05/2014
var mensaje = "Hola Mundo";
var porcion = mensaje.substring(2); // porcion = "la Mundo"
var mensaje = "Hola Mundo, soy una cadena de texto!"; var palabra = “Hola”
35
var palabras = mensaje.split(" ");
// palabras = ["Hola", "Mundo,", "soy", "una", "cadena", "de", "texto!"];
var letras = palabra.split(""); // letras = ["H", "o", "l", "a"]
Funciones y propiedades
básicas de JavaScript
• Funciones útiles para arrays
12/05/2014
var vocales = ["a", "e", "i", "o", "u"];
var numeroVocales = vocales.length; // numeroVocales = 5
12/05/2014
var array = [1, 2, 3];
array.push(4); // ahora array = [1, 2, 3, 4]
12/05/2014
var numero1 = 0;
var numero2 = 0;
alert(numero1/numero2); // se muestra el valor NaN
38
Funciones y propiedades
básicas de JavaScript
• Funciones útiles para números
12/05/2014
var numero1 = 10;
var numero2 = 0;
alert(numero1/numero2); // se muestra el valor Infinity
39
Funciones
• function nombre_funcion() {
...
12/05/2014
}
var resultado;
var numero1 = prompt("Introduce un número: ");
var numero2 = prompt("Introduce otro número: ");
suma_y_muestra();
40
Ejemplo
Argumentos y valores de
retorno
• function nombre_funcion(argumento1, argumento2, …argumentoN) {
...
12/05/2014
}
12/05/2014
alert(mensaje);
function creaMensaje() {
var mensaje = “Mensaje de prueba”;
alert(mensaje); } 42
creaMensaje(); Ejemplo
Ámbito de las variables
var mensaje = “Mensaje de prueba”;
function muestraMensaje() {
alert(mensaje); }
12/05/2014
Ing. Hector Estigarribia - FCT Unc@
La variable mensaje se ha definido fuera de cualquier función.
Este tipo de variables automáticamente se transforman en
variables globales y están disponibles en cualquier punto del
programa (incluso dentro de cualquier función).
12/05/2014
• Concretamente, la sentencia break permite terminar de
forma abrupta un bucle y la sentencia continue permite
saltarse algunas repeticiones del bucle.
44
Otras estructuras de control
while(condicion) { ... } do { ... } while(condicion);
12/05/2014
switch(variable) {
45
FUENTES
• http://librosweb.es/javascript/
• http://www.desarrolloweb.com/manuales/20/
12/05/2014
• http://www.gratiszona.com/apuntes/javascript/16-
conversion-entre-tipos.htm