Identificación Del Lenguaje JavaScript
Identificación Del Lenguaje JavaScript
Identificación Del Lenguaje JavaScript
Se define como orientado a objetos,3 basado en prototipos, imperativo, dbilmente tipado y dinmico. Se utiliza principalmente en su forma del lado del cliente (client-side), implementado como parte de un navegador web permitiendo mejoras en la interfaz de usuario y pginas web dinmicas, en bases de datos locales al navegador...4 aunque existe una forma de JavaScript del lado del servidor (Server-side JavaScript o SSJS). Su uso en aplicaciones externas a la web, por ejemplo en documentos PDF, aplicaciones de escritorio (mayoritariamente widgets) es tambin significativo.
JavaScript se dise con una sintaxis similar al C, aunque adopta nombres y convenciones del lenguaje de programacin Java. Sin embargo Java y JavaScript no estn relacionados y tienen semnticas y propsitos diferentes. Todos los navegadores modernos interpretan el cdigo JavaScript integrado en las pginas web. Para interactuar con una pgina web se provee al lenguaje JavaScript de una implementacin del Document Object Model (DOM). Tradicionalmente se vena utilizando en pginas web HTML para realizar operaciones y nicamente en el marco de la aplicacin cliente, sin acceso a funciones del servidor. JavaScript se interpreta en el agente de usuario, al mismo tiempo que las sentencias van descargndose junto con el cdigo HTML.
XHTML
XHTML, Siglas del ingls eXtensible HyperText Markup Language. XHTML es bsicamente HTML expresado como XML vlido. Es ms estricto a nivel tcnico, pero esto permite que posteriormente sea ms fcil al hacer cambios o buscar errores entre otros. En su versin 1.0, XHTML es solamente la versin XML de HTML, por lo que tiene, bsicamente, las mismas funcionalidades, pero cumple las especificaciones, ms estrictas, de XML. Su objetivo es avanzar en el proyecto del World Wide Web Consortium de lograr una web semntica, donde la informacin, y la forma de presentarla estn claramente separadas. La versin 1.1 es similar, pero parte a la especificacin en mdulos. En sucesivas versiones la W3C planea romper con los tags clsicos trados de HTML.
Para que la pgina XHTML resultante sea vlida, es necesario aadir el atributo type a la etiqueta <script>. Los valores que se incluyen en el atributo type estn estandarizados y para el caso de JavaScript, el valor correcto es text/javascript. Este mtodo se emplea cuando se define un bloque pequeo de cdigo o cuando se quieren incluir instrucciones especficas en un determinado documento HTML que completen las instrucciones y funciones que se incluyen por defecto en todos los documentos del sitio web. El principal inconveniente es que si se quiere hacer una modificacin en el bloque de cdigo, es necesario modificar todas las pginas que incluyen ese mismo bloque de cdigo JavaScript.
Ejemplo:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-88591" /> <title>Ejemplo de cdigo JavaScript en el propio documento</title> <script type="text/javascript"> alert("Un mensaje de prueba"); </script> </head> <body> <p>Un prrafo de texto.</p> </body> </html>
Ejemplo:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Ejemplo de cdigo JavaScript en el propio documento</title> </head> <body> <p onclick="alert('Un mensaje de prueba')">Un prrafo de texto.</p> </body> </html>
Ejemplo:
Archivo codigo.js alert("Un mensaje de prueba"); Documento XHTML <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-88591" /> <title>Ejemplo de cdigo JavaScript en el propio documento</title> <script type="text/javascript" src="/js/codigo.js"></script> </head> <body> <p>Un prrafo de texto.</p> </body> </html>
Etiqueta <noscript>
Algunos navegadores no disponen de soporte completo de JavaScript, otros navegadores permiten bloquearlo parcialmente e incluso algunos usuarios bloquean completamente el uso de JavaScript porque creen que as navegan de forma ms segura.
En estos casos, es habitual que si la pgina web requiere JavaScript para su correcto funcionamiento, se incluya un mensaje de aviso al usuario indicndole que debera activar JavaScript para disfrutar completamente de la pgina. El siguiente ejemplo muestra una pgina web basada en JavaScript cuando se accede con JavaScript activado y cuando se accede con JavaScript completamente desactivado.
El lenguaje HTML define la etiqueta <noscript> para mostrar un mensaje al usuario cuando su navegador no puede ejecutar JavaScript. El siguiente cdigo muestra un ejemplo del uso de la etiqueta <noscript> La etiqueta <noscript> se debe incluir en el interior de la etiqueta <body> (normalmente se incluye al principio de <body>). El mensaje que muestra <noscript> puede incluir cualquier elemento o etiqueta XHTML.
Ejemplo:
<head> ... </head> <body> <noscript> <p>Bienvenido a Mi Sitio</p> <p>La pgina que ests viendo requiere para su funcionamiento el uso de JavaScript. Si lo has deshabilitado intencionadamente, por favor vuelve a activarlo.</p> </noscript> </body>
Tipos de variables
Aunque todas las variables de JavaScript se crean de la misma forma (mediante la palabra reservada var), la forma en la que se les asigna un valor depende del tipo de valor que se quiere almacenar (nmeros, textos, etc.)
Numricas
var iva = 16; // variable tipo entero var total = 234.65; // variable tipo decimal
Cadenas de texto
var mensaje = "Bienvenido a nuestro sitio web"; var nombreProducto = 'Producto ABC'; var letraSeleccionada = 'c'; /* El contenido de texto1 tiene comillas simples, por lo que se encierra con comillas dobles */ var texto1 = "Una frase con 'comillas simples' dentro"; /* El contenido de texto2 tiene comillas dobles, por lo que se encierra con comillas simples */ var texto2 = 'Una frase con "comillas dobles" dentro';
Si se quiere incluir
Una nueva linea Un tabulador Una comilla simple Una comilla doble Una barra inclinada
Se debe incluir
\n \t \ \ \\
var texto1 = 'Una frase con \'comillas simples\' dentro'; var texto2 = "Una frase con \"comillas dobles\" dentro";
Arrays
var dia1 = "Lunes"; var dia2 = "Martes"; ... var dia7 = "Domingo";
Arrays
var dias = ["Lunes", "Martes", "Mircoles", "Jueves", "Viernes", "Sbado", "Domingo"];
var nombre_array = [valor1, valor2, ..., valorN]; var diaSeleccionado = dias[0]; // diaSeleccionado = "Lunes" var otroDia = dias[5]; // otroDia = "Sbado"
Booleanos
var clienteRegistrado = false; var ivaIncluido = true;
Tipos de operadores
Las variables por s solas son de poca utilidad. Hasta ahora, slo se ha visto cmo crear variables de diferentes tipos y cmo mostrar su valor mediante la funcin alert(). Para hacer programas realmente tiles, son necesarias otro tipo de herramientas. Los operadores permiten manipular el valor de las variables, realizar operaciones matemticas con sus valores y comparar diferentes variables. De esta forma, los operadores permiten a los programas realizar clculos complejos y tomar decisiones lgicas en funcin de comparaciones y otros tipos de condiciones.
Asignacin
var numero1 = 3;
var numero1 = 3; var numero2 = 4;
/* Error, la asignacin siempre se realiza a una variable, por lo que en la izquierda no se puede indicar un nmero */ 5 = numero1;
// Ahora, la variable numero1 vale 5 numero1 = 5; // Ahora, la variable numero1 vale 4 numero1 = numero2;
Incremento y decremento
var numero = 5; ++numero; alert(numero); // numero = 6
var numero = 5; numero = numero + 1; alert(numero); // numero = 6
Lgicos
Los operadores lgicos son imprescindibles para realizar aplicaciones complejas, ya que se utilizan para tomar decisiones sobre las instrucciones que debera ejecutar el programa en funcin de ciertas condiciones.
El resultado de cualquier operacin que utilice operadores lgicos siempre es un valor lgico o booleano.
Negacin
var visible = true; alert(!visible); // Muestra "false" y no "true
var cantidad = 0; vacio = !cantidad; // vacio = true cantidad = 2; vacio = !cantidad; // vacio = false var mensaje = ""; mensajeVacio = !mensaje; // mensajeVacio = true mensaje = "Bienvenido"; mensajeVacio = !mensaje; // mensajeVacio = false
AND
var valor1 = true; var valor2 = false; resultado = valor1 && valor2; // resultado = false
valor1 = true; valor2 = true; resultado = valor1 && valor2; // resultado = true
OR
var valor1 = true; var valor2 = false; resultado = valor1 || valor2; // resultado = true
valor1 = false; valor2 = false; resultado = valor1 || valor2; // resultado = false
Matemticos
var numero1 = 10; var numero2 = 5; resultado = numero1 / numero2; // resultado = 2 resultado = 3 + numero1; // resultado = 13 resultado = numero2 4; // resultado = 1 resultado = numero1 * numero 2; // resultado = 50
Relacionales
var numero1 = 3; var numero2 = 5; resultado = numero1 > numero2; // resultado = false resultado = numero1 < numero2; // resultado = true
numero1 = 5; numero2 = 5; resultado = numero1 >= numero2; // resultado = true resultado = numero1 <= numero2; // resultado = true resultado = numero1 == numero2; // resultado = true resultado = numero1 != numero2; // resultado = false