Informática JavaScript: Lenguaje de programación Fco J. Martín Mateos Carmen Graciani Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla
Literales Enteros Con base decimal: 45, -43 Con base octal: 043, -054 Con base hexadecimal: 0x32f, 0xdd Reales Notación decimal: 34.4, -23.3 Notación exponencial: 32.4e-7, -10.4e5 Lógicos (booleanos): true, false Valor nulo: null Se emplea únicamente para comprobar si una variable tiene un valor asignado
Literales Cadenas (strings): Delimitadas por comillas dobles o simples Caracteres especiales \n Nueva ĺınea \t Tabulador \\Barra invertida \ Comillas simples \ Comillas dobles Se pueden emplear comillas de un tipo dentro de una cadena delimitada por comillas del otro tipo: enlace = <A href="http://www.cs.us.es">ccia</a>
Valores No hay diferencia expĺıcita entre números enteros o reales Las operaciones entre tipos de valores distintos se ajustan de forma impĺıcita Conversiones expĺıcitas eval(s) Trata de evaluar la cadena s como si fuera una expresión matemática parseint(s,b) Convierte la cadena s a un entero, utilizando la base b para analizarlo parsefloat(s) Convierte la cadena s a un número en punto flotante
Variables Las variables son contenedores donde se almacenan valores para su uso posterior Como nombre de variable se puede utilizar cualquier secuencia de caracteres alfanuméricos y, que no comience por un número, ni coincida con una palabra reservada del lenguaje Las variables se pueden declarar con la palabra reservada var, pero no es necesario. Una vez declarada una variable, se le puede asignar cualquier valor Distingue entre mayúsculas y minúsculas, así que dato, Dato y DATO serían tres variables distintas. Todos las variables son globales salvo las declaradas en las definiciones de funciones
Variables Variables en JavaScript <SCRIPT type="text/javascript"> var Dato 1; Dato 1 = "quince"; Dato 1 = 15; var Dato 2 = 25; Dato 3 = 35; document.write("total" = + (Dato 1 + Dato 2 + Dato 3)); </SCRIPT>
Instrucciones Las instrucciones son sentencias de código El final de una instrucción se indica con ; En algunas ocasiones es necesario agrupar instrucciones en un bloque, para ello utilizamos los delimitadores {, y } Los bloques de instrucciones no necesitan el indicador final de instrucción ;
Comentarios Hay dos formas de realizar comentarios Comentarios de ĺınea: comienzan con // Comentarios de bloque: delimitados por /* y */ Comentarios en JavaScript <SCRIPT type="text/javascript"> // Datos de entrada var Dato 1 = 15; var Dato 2 = 25; /* Vamos a realizar una operación aritmética con ambos datos */ document.write("total" = + (Dato 1 + Dato 2)); </SCRIPT>
Operadores aritméticos Operador Uso Significado - -x Opuesto + x + y Suma - x - y Resta * x * y Multiplicación / x / y División % x % y Módulo
Operadores de asignación Operador Uso Significado = x = y Asigna a x el valor de y += x += y x = x + y -= x -= y x = x - y *= x *= y x = x * y /= x /= y x = x / y %= x %= y x = x % y
Operadores de incremento y decremento Operador Uso Significado ++ x++ Usar x y después x = x+1 ++x Hacer x = x+1 y después usar x -- x-- Usar x y después x = x-1 --x Hacer x = x-1 y después usar x
Operadores de comparación Operador Uso Significado == x == y Equivalente a!= x!= y Distinto de < x < y Menor que <= x <= y Menor o igual que > x > y Mayor que >= x >= y Mayor o igual que
Operadores de lógicos Operador Uso Significado!!x Negación && x && y Conjunción x y Disyunción
Operadores condicional Operador Uso Significado Si x!= false entonces evalúa y,? : x? y : z e.c.c. (x == false) evalúa z
Operadores de cadenas Operador Uso Significado + x + y Concatenación += x += y x = x + y El símbolo + sirve como operador aritmético y como operador de cadenas En caso de querer concatenar el resultado de una expresión aritmética, es conveniente agrupar ésta entre paréntesis "Total = " + (5 + 5); = "Total = 10" "Total = " + 5 + 5; = "Total = 55"
El condicional if if (condición) { consecuencia } else { alternativa } Si condición == true, se evalúa consecuencia, en caso contrario se evalúa alternativa Tanto la consecuencia como la alternativa pueden contener más de una instrucción La parte else { alternativa } es opcional
Condicionales anidados <SCRIPT type="text/javascript"> if (login!= "Bart") { document.write("no puedes entrar en la ciudad"); } else if (password == "aft123") { document.write("bienvenido a Springfield"); } else { document.write("contrase~na incorrecta"); } </SCRIPT> Se pueden anidar tantos condicionales como sea necesario para obtener el resultado esperado
El bucle for for (inicialización; condición; actualización) { instrucciones } Se realiza la inicialización Mientras la condición sea cierta, se evalúan las instrucciones y después la actualización Cuando la condición es falsa, se termina Usualmente: existe una variable de control del bucle que toma su valor en la inicialización, interviene en la condición y cambia en la actualización
Bucle for con dos variables de control <SCRIPT type="text/javascript"> for (s = 1, b = 10; s < b, s < 3; s++, b--) { document.write("bajar: " + b); document.write(" - Subir: " + s + "<BR>"); } </SCRIPT> En este caso hay dos variables para controlar el bucle Dos inicializaciones: s = 1, b = 10 Dos condiciones: s < b, s < 3 Dos actualizaciones: s++, b--
El bucle while while (condición) { instrucciones } Mientras la condición sea cierta, se evalúan las instrucciones Cuando la condición es falsa, se termina Usualmente: existen variables de control del bucle que toma su valor inicial antes del bucle, interviene en la condición y cambian en las instrucciones
Bucle for con dos variables de control <SCRIPT type="text/javascript"> s = 1; b = 10; while (s < b && s < 3) { document.write("bajar: " + b); document.write(" - Subir: s++;; b--;; } </SCRIPT> " + s + "<BR>");
break y continue La instrucción break permite terminar de forma brusca la ejecución de un bucle Se puede utilizar con los bucles for y while Sólo sirve para terminar un bucle La instrucción continue permite saltar una iteración en la ejecución de un bucle En un bucle for salta hasta la actualización En un bucle while salta hasta la condición
Funciones Una función es un fragmento de código al que suministramos unos datos y devuelve un resultado o efecto La instrucción return sirve para devolver un valor como resultado de la ejecución de una función Las variables que se utilizan en la definición de una función son locales a la definición de la misma function nombre (var1, var2,...) { instrucciones return valor }
Funciones Para evaluar una función basta con utilizar su nombre con tantos argumentos como variables aparezcan en la definición de la función Al evaluar una función, se ejecutan todas las instrucciones del cuerpo de su definición, donde las variables de la definición son sustituidas por los argumentos de la llamada nombre (arg1, arg2,...);
Funciones La cabecera del documento es el sitio más adecuado para incluir la definición de funciones, de esta forma nos aseguramos de que el navegador las ha evaluado antes de que se genere algún evento en el documento que las necesite. Las llamadas a las funciones se suelen realizar en respuesta a eventos generados en el documento