SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
IES Gran Capitán 
Módulo: Desarrollo Web en entorno cliente 
Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web” 
Lenguajes de programación: 
JavaScript 
Fecha entrega: 08-10-2014 
Autores: Elisa Navarro Zuara 
Pedro J. Ramos Ruiz 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
2 
1 INTRODUCCIÓN 
JavaScript es un lenguaje de programación interpretado y orientado a objetos, por lo que no es 
necesario compilar los programas para ejecutarlos. En otras palabras, los programas escritos con 
JavaScript se pueden probar directamente en cualquier navegador sin necesidad de procesos intermedios. 
JavaScript es un lenguaje de programación que se utiliza principalmente para crear páginas web 
dinámicas. Una página web dinámica es aquella que incorpora efectos como texto que aparece y 
desaparece, animaciones, acciones que se activan al pulsar botones y ventanas con mensajes de aviso al 
usuario. 
JavaScript se diseñó con una sintaxis similar al C, aunque adopta nombres y convenciones del 
lenguaje de programación Java. Sin embargo, JavaScript no guarda ninguna relación directa con el 
lenguaje de programación Java. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
3 
2 HISTORIA 
En 1995, Brendan Eich trabajaba en Netscape Communications Corporation, la compañía que 
publicó el famoso Netscape Navigator, entonces principal competidor de Internet Explorer. Brendan 
desarrolló LiveScript un lenguaje de script que se basa en el lenguaje Java. Netscape inició el desarrollo 
de una versión del cliente LiveScript, que pasó a llamarse JavaScript, en homenaje al lenguaje Java 
creado por Sun Microsystems. 
En ese momento, el lenguaje Java era cada vez más popular, y Brendan Eich, el padre de 
JavaScript, al llamarlo JavaScript en lugar de LiveScript era una forma de publicidad de Java y JavaScript 
en sí. Atención, al final, estos dos lenguajes son radicalmente diferentes, no vayas a confundir Java y 
JavaScript, pues operan de forma diferente. 
JavaScript fue lanzado en diciembre de 1995 y estaba integrado en Netscape Navigator 2. El 
lenguaje fue tan exitoso, que Microsoft desarrolló una versión similar llamada JScript, que se instalaba en 
Internet Explorer 3, en 1996. Netscape decidió enviar su versión de JavaScript a ECMA International 
(European Computer Manufacturers Association, la Asociación Europea de Normalización) para que el 
lenguaje fuera normalizado, es decir para que se creara una referencia del lenguaje y que así pudiera ser 
utilizado por otras personas y embebidos en otro software. ECMA International estandarizó el lenguaje 
con el nombre de ECMAScript. La versión más conocida es utilizada en todo el mundo, es la versión 
ECMAScript 3, publicado en diciembre de 1999 
En enero de 2009, el proyecto CommonJS fue fundado con el objetivo de especificar una librería 
para uso de tareas comunes principalmente para el desarrollo fuera del navegador web. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
4 
3 CARACTERÍSTICAS DE JAVASCRIPT 
Las siguientes características son comunes a todas las implementaciones que se ajustan al 
estándar ECMAScript, salvo que se indique expresamente lo contrario. 
3.1 Imperativo y estructurado 
JavaScript soporta gran parte de la sintaxis de la programación estructurada de C. Con una 
salvedad: en C, el ámbito de las variables alcanza al bloque en el cual fueron definidas; sin embargo, en 
JavaScript esto no es soportado, puesto que el ámbito de las variables es el de la función en la cual fueron 
declaradas. 
Esto cambia con la versión de JavaScript 1.7, ya que soporta block scoping por medio de la 
palabra clave let. 
Como en C, JavaScript hace distinción entre expresiones y sentencias. Una diferencia sintáctica 
con respecto a C es la inserción automática de punto y coma, es decir, en JavaScript los puntos y comas 
que finalizan una sentencia pueden ser omitidos. 
3.2 Dinámico 
3.2.1 Tipado dinámico 
Como en la mayoría de lenguajes de scripting, el tipo está asociado al valor, no a la variable. Por 
ejemplo, una variable x en un momento dado puede estar ligada a un número y más adelante, religada a 
una cadena. JavaScript soporta varias formas de comprobar el tipo de un objeto. Una forma de saberlo es 
por medio de la palabra clave typeof. 
3.2.2 Objetual 
JavaScript está formado casi en su totalidad por objetos. Los objetos en JavaScript son arrays 
asociativos, mejorados con la inclusión de prototipos. Las propiedades y sus valores pueden ser creados, 
cambiados o eliminados en tiempo de ejecución. JavaScript tiene un pequeño número de objetos 
predefinidos como son Function y Date. 
3.2.3 Evaluación en tiempo de ejecución 
JavaScript incluye la función eval que permite evaluar expresiones como expresadas como 
cadenas en tiempo de ejecución. Por ello se recomienda que eval sea utilizado con precaución y que se 
opte por utilizar la función JSON.parse() en la medida de lo posible, pues resulta mucho más segura. 
3.3 Funcional 
A las funciones se les suele llamar ciudadanos de primera clase; son objetos en sí mismos. Como 
tal, poseen propiedades y métodos, como .call() y .bind(). Una función anidada es una función definida 
dentro de otra. 
3.4 Prototípico 
3.4.1 Prototipos 
JavaScript usa prototipos en vez de clases para el uso de herencia. Es posible llegar a emular 
muchas de las características que proporcionan las clases en lenguajes orientados a objetos tradicionales 
por medio de prototipos en JavaScript. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
5 
3.4.2 Funciones como constructores de objetos 
Las funciones también se comportan como constructores. ECMAScript 5 ofrece el método 
Object.create, permitiendo la creación explícita de una instancia sin tener que heredar automáticamente 
del prototipo de Object. Se pueden añadir nuevos métodos modificando el prototipo del objeto usado 
como constructor. Constructores predefinidos en JavaScript, como Array u Object, también tienen 
prototipos que pueden ser modificados. Aunque esto sea posible se considera una mala práctica modificar 
el prototipo de Object ya que la mayoría de los objetos en JavaScript heredan los métodos y propiedades 
del objeto prototype. 
3.5 Otras características 
3.5.1 Entorno de ejecución 
JavaScript normalmente depende del entorno en el que se ejecute (por ejemplo, en un navegador 
web) para ofrecer objetos y métodos por los que los scripts pueden interactuar con el "mundo exterior". 
De hecho, depende del entorno para ser capaz de proporcionar la capacidad de incluir o importar scripts 
(por ejemplo, en HTML por medio del tag <script>). 
3.5.2 Funciones variádicas 
Un número indefinido de parámetros pueden ser pasados a la función. La función puede acceder 
a ellos a través de los parámetros o también a través del objeto local arguments. Las funciones variádicas 
también pueden ser creadas usando el método .apply(). 
3.5.3 Funciones como métodos 
A diferencia de muchos lenguajes orientados a objetos, no hay distinción entre la definición de 
función y la definición de método. Más bien, la distinción se produce durante la llamada a la función; una 
función puede ser llamada como un método. Cuando una función es llamada como un método de un 
objeto, la palabra clave this, representa al objeto que invocó dicha función. 
3.5.4 Arrays y la definición literal de objetos 
Al igual que muchos lenguajes de script, arrays y objetos pueden ser creados con una sintaxis 
abreviada. De hecho, estos literales forman la base del formato de datos JSON. 
3.5.5 Expresiones regulares 
JavaScript también soporta expresiones regulares de una manera similar a Perl, que proporcionan 
una sintaxis concisa y poderosa para la manipulación de texto que es más sofisticado que las funciones 
incorporadas a los objetos de tipo string. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
6 
3.6 Extensiones específicas del fabricante 
JavaScript se encuentra oficialmente bajo la organización de Mozilla Foundation, y nuevas 
características del lenguaje son añadidas periódicamente. Sin embargo, sólo algunos motores JavaScript 
soportan estas características: 
• Las propiedades get y set. 
• Cláusulas catch condicionales. 
• Protocolo iterador adoptado de Python. 
• Corrutinas también adoptadas de Python. 
• Generación de listas y expresiones por comprensión también adoptado de Python. 
• Establecer el ámbito a bloque a través de la palabra clave let. 
• Desestructuración de arrays y objetos. 
• Expresiones concretas en funciones (function(args) expr). 
• ECMAScript para XML (E4X), una extensión que añade soporte nativo XML a ECMAScript. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
7 
4 SINTAXIS Y SEMÁNTICA 
La sintaxis de un lenguaje de programación se define como el conjunto de reglas que deben 
seguirse al escribir el código fuente de los programas para considerarse como correctos para ese lenguaje 
de programación. 
La sintaxis de JavaScript es muy similar a la de otros lenguajes de programación como Java y C. 
Las normas básicas que definen la sintaxis de JavaScript son las siguientes: 
• No se tienen en cuenta los espacios en blanco y las nuevas líneas: el intérprete de JavaScript 
ignora cualquier espacio en blanco sobrante, por lo que el código se puede ordenar de forma 
adecuada para entenderlo mejor (tabulando las líneas, añadiendo espacios, creando nuevas 
líneas, etc.). 
Código JavaScript: 
instruccion_1; 
instruccion_1_1; 
instruccion_1_2; 
instruccion_2; 
• Se distinguen las mayúsculas y minúsculas: al igual que sucede con la sintaxis de las etiquetas 
y elementos XHTML. Sin embargo, si en una página XHTML se utilizan indistintamente 
mayúsculas y minúsculas, la página se visualiza correctamente, siendo el único problema la no 
validación de la página. En cambio, si en JavaScript se intercambian mayúsculas y minúsculas el 
script no funciona. 
• Se pueden incluir comentarios: los comentarios se utilizan para añadir información en el 
código fuente del programa. Aunque el contenido de los comentarios no se visualiza por 
pantalla, si que se envía al navegador del usuario junto con el resto del script, por lo que es 
necesario extremar las precauciones sobre la información incluida en los comentarios. 
Hay dos tipos de comentarios: 
• Comentarios de fin de línea. Se utilizan para comentar una instrucción. Comienza con dos 
barras de división. 
• Comentarios multilínea. Este tipo permite saltos de línea. Un comentario multilínea 
comienza con /* y termina con */. 
Código JavaScript: 
//A continuación se muestra un comentario 
alert("Hola Mundo”); 
/* Los comentarios de varias líneas son muy útiles 
cuando se necesita incluir bastante información 
en los comentarios */ 
alert("Hola Mundo”); 
• No se define el tipo de las variables: al crear una variable, no es necesario indicar el tipo de 
dato que almacenará. De esta forma, una misma variable puede almacenar diferentes tipos de 
datos durante la ejecución del script. 
• No es necesario terminar cada sentencia con el carácter de punto y coma (;): en la mayoría 
de lenguajes de programación, es obligatorio terminar cada sentencia con el carácter (;). Aunque 
JavaScript no obliga a hacerlo, es conveniente seguir la tradición de terminar cada sentencia con 
el carácter del punto y coma (;). 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
8 
Ejemplo de un programa escrito en JavaScript: 
function mayor() 
{ 
//En primer lugar se declaran las variables. 
var num1,num2; 
//Se piden los valores por pantalla. 
num1=parseInt(prompt("Introduce un número","")); 
num2=parseInt(prompt("Introduce un número","")); 
//Se comparan los números introducidos por pantalla. 
if (num1>num2) 
{ 
document.write("El número "+num1+" es mayor que el número "+num2); 
} 
else 
{ 
if (num2>num1) 
{ 
document.write("El número "+num2+" es mayor que el número "+num1); 
} 
else 
{ 
document.write("El número "+num1+" es igual que el número "+num2); 
} 
} 
} 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
9 
5 PROS Y CONTRAS 
Ventajas 
• JavaScript se ejecuta en el lado del cliente. Esto significa que el código se ejecuta en el 
procesador del usuario en lugar de un servidor web con el consiguiente ahorro de ancho de 
banda y la tensión en el servidor web. 
• JavaScript es un lenguaje relativamente fácil. El lenguaje JavaScript es relativamente 
fácil de aprender y se compone de sintaxis que está en Inglés. Utiliza el modelo DOM que 
proporciona un montón de funcionalidad, escrito previamente, a los diversos objetos en las 
páginas que hacen que sea muy fácil para desarrollar un script para resolver un objetivo 
personalizado. 
• JavaScript es relativamente rápido para el usuario final. A medida que se ejecuta el 
código en la computadora, los resultados de los usuarios y el procesamiento se ha 
completado casi al instante en función de la tarea, ya que no tiene que ser procesado en el 
servidor web del sitio y se envía de vuelta al usuario local, así como el ancho de banda del 
servidor. 
• Extensión de funciones a las páginas web. Add-ons como Greasemonkey permiten a los 
desarrolladores de JavaScript escribir fragmentos de JavaScript que se pueden ejecutar en 
las páginas web que desee para ampliar su funcionalidad. Podemos escribir y utilizar un 
add-on como Greasemonkey para implementarlo en la página web. 
Inconvenientes 
• Cuestiones de seguridad. Fragmentos de JavaScript se ejecutan en servidores del cliente 
inmediatamente y por lo tanto también se pueden utilizar para explorar el sistema del 
usuario. Si bien, se establece una cierta restricción para los estándares web modernos en los 
navegadores, el código malicioso todavía se puede ejecutar por encima de las restricciones 
establecidas. 
• Prestación JavaScript. Diferentes motores de diseño pueden hacer JavaScript diferente que 
resulta en falta de coherencia en términos de funcionalidad y la interfaz. Mientras que las 
últimas versiones de JavaScript se han orientado hacia un estándar universal, todavía existen 
ciertas variaciones. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
10 
6 CONCLUSIÓN 
En conclusión: 
• JavaScript es un lenguaje de programación interpretado y orientado a objetos, que se utiliza 
principalmente para crear páginas web dinámicas. 
• Además, JavaScript no guarda ninguna relación directa con el lenguaje de programación 
Java. 
• JavaScript está normalizado por ECMA International como el nombre ECMAScript 
Language Reference. 
• Imperativo y estructurado. 
• Débilmente tipado, está formado casi en su totalidad por objetos y se evalúa en tiempo de 
ejecución. 
• A las funciones se les suele llamar ciudadanos de primera clase; son objetos en sí mismos. 
• JavaScript usa prototipos en vez de clases para el uso de herencia. 
• El entorno de ejecución de JavaScript normalmente es el navegador web. 
• Un número indefinido de parámetros pueden ser pasados a la función. 
• A diferencia de muchos lenguajes orientados a objetos, no hay distinción entre la definición 
de función y la definición de método. 
• Al igual que muchos lenguajes de script, arrays y objetos pueden ser creados con una 
sintaxis abreviada. 
• JavaScript también soporta expresiones regulares de una manera similar a Perl, que 
proporcionan una sintaxis concisa y poderosa para la manipulación de texto. 
• JavaScript se encuentra oficialmente bajo la organización de Mozilla Foundation. 
• La sintaxis de JavaScript es muy similar a la de otros lenguajes de programación como Java 
y C. Las normas básicas que definen la sintaxis de JavaScript son las siguientes: 
• No se tienen en cuenta los espacios en blanco y las nuevas líneas. 
• Se distinguen las mayúsculas y minúsculas. 
• Se pueden incluir comentarios. 
• No se define el tipo de las variables. 
• No es necesario terminar cada sentencia con el carácter de punto y coma (;). 
• Ventajas de JavaScript: 
• JavaScript se ejecuta en el lado del cliente. 
• JavaScript es un lenguaje relativamente fácil. 
• JavaScript es relativamente rápido para el usuario final. 
• Extensión de funciones a las páginas web. 
• Inconvenientes de JavaScript: 
• Cuestiones de seguridad. 
• Prestación JavaScript. 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
11 
7 CONCEPTOS CLAVE 
· Script: cada uno de los programas, aplicaciones o trozos de código creados con el lenguaje de 
programación JavaScript. Unas pocas líneas de código forman un script y un archivo de miles de 
líneas de JavaScript también se considera un script. A veces se traduce al español directamente como 
"guión", aunque script es una palabra más adecuada y comúnmente aceptada. 
· Sentencia: cada una de las instrucciones que forman un script. 
· Palabras reservadas: son las palabras (en inglés) que se utilizan para construir las sentencias de 
JavaScript y que por tanto no pueden ser utilizadas libremente. Las palabras actualmente reservadas 
por JavaScript son: break, case, catch, continue, default, delete, do, else, finally, for, function, if, in, 
instanceof, new, return, switch, this, throw, try, typeof, var, void, while, with. 
· Interpretado: es ejecutado por medio de un intérprete. 
· Orientado a objetos: usa los objetos en sus interacciones para diseñar aplicaciones y programas 
informáticos. 
· Variables: una variable está formada por un espacio en el sistema de almacenaje (memoria principal 
de un ordenador) y un nombre simbólico (un identificador) que está asociado a dicho espacio. Ese 
espacio contiene una cantidad o información conocida o desconocida, es decir un valor. 
· Prototipos: son un estilo en el cual los objetos son creados mediante la clonación de otros objetos o 
mediante la escritura de código por parte del programador. De esta forma los objetos ya existentes 
pueden servir de prototipos para los que el programador necesite crear. 
· Herencia: la herencia facilita la creación de objetos a partir de otros ya existentes e implica que una 
subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su 
superclase. 
· Arrays: es una zona de almacenamiento continuo, que contiene una serie de elementos del mismo 
tipo. 
· JSON: es un formato ligero para el intercambio de datos, además es un subconjunto de la notación 
literal de objetos de JavaScript que no requiere el uso de XML. 
· Expresiones regulares: son una secuencia de caracteres que forman un patrón de búsqueda, 
principalmente utilizadas para la búsqueda de patrones de cadenas de caracteres u operaciones de 
sustituciones. 
· Modelo DOM: es una interfaz de programación de aplicaciones para acceder, añadir y cambiar 
dinámicamente contenido estructurado en documentos con lenguajes como ECMAScript 
(JavaScript). 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
12 
8 BIBLIOGRAFIA 
· Rafael Menéndez-Barzanallana Asensio. Lenguaje de programación JavaScript. 
Consultado en: http://www.um.es/docencia/barzana/DAWEB/Lenguaje-de-programacion- 
JavaScript-1.pdf 
· Libros Web. Introducción a JavaScript. 
Consultado en: http://librosweb.es/javascript/capitulo_1.html 
· W3Schools. Tutorial de JavaScript. 
Consultado en: http://www.w3schools.com/js/default.asp 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Lenguajes de programación: JavaScript 
13 
9 ÍNDICE 
1INTRODUCCIÓN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 
2HISTORIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
3CARACTERÍSTICAS DE JAVASCRIPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 
4SINTAXIS Y SEMÁNTICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 
5PROS Y CONTRAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 
6CONCLUSIÓN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 
7CONCEPTOS CLAVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 
8BIBLIOGRAFIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 
9ÍNDICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. 
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org

Más contenido relacionado

La actualidad más candente (13)

Manual De Javascript
Manual De JavascriptManual De Javascript
Manual De Javascript
 
Javascript
JavascriptJavascript
Javascript
 
Java desde cero
Java desde ceroJava desde cero
Java desde cero
 
Ruby en linux
Ruby en linuxRuby en linux
Ruby en linux
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Java script
Java scriptJava script
Java script
 
Portafoliojava
PortafoliojavaPortafoliojava
Portafoliojava
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Portafoliojava
PortafoliojavaPortafoliojava
Portafoliojava
 
Manual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroManual.curso.de.java.desde.cero
Manual.curso.de.java.desde.cero
 
Lenguaje de programacion de c++
Lenguaje de programacion de c++Lenguaje de programacion de c++
Lenguaje de programacion de c++
 

Similar a T1 trabajo1navarrozuaraelisaramosruizpedro

Java script tarea
Java script tareaJava script tarea
Java script tareasaullopes24
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptKarsarmi
 
JavaScript
JavaScriptJavaScript
JavaScriptJomicast
 
Desarrollo de página web dinámica
Desarrollo de página web dinámicaDesarrollo de página web dinámica
Desarrollo de página web dinámicaJuan Carlos Medrano
 
Programacion web
Programacion webProgramacion web
Programacion webIACSA
 
Definición y función de lenguaje java script
Definición y  función de lenguaje java scriptDefinición y  función de lenguaje java script
Definición y función de lenguaje java scriptAndres Rodriguez
 
Guia java script
Guia java scriptGuia java script
Guia java scriptmariaunefa
 
Trabajo java
Trabajo javaTrabajo java
Trabajo javaamec0612
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java Eudris Cabrera
 
Java desde 0
Java desde 0Java desde 0
Java desde 0Saviotec
 
Tipo de-lenguaje-de-programación-java-script-jaime-monsalve
Tipo de-lenguaje-de-programación-java-script-jaime-monsalveTipo de-lenguaje-de-programación-java-script-jaime-monsalve
Tipo de-lenguaje-de-programación-java-script-jaime-monsalvegiovanni ascencio
 
Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)josegonzalo130
 
Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1Lubas Pc
 
Presentacion de ruby
Presentacion de rubyPresentacion de ruby
Presentacion de rubyKarlytozdj
 
Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosDoris Aguagallo
 

Similar a T1 trabajo1navarrozuaraelisaramosruizpedro (20)

Java script tarea
Java script tareaJava script tarea
Java script tarea
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScript
 
JavaScript
JavaScriptJavaScript
JavaScript
 
Desarrollo de página web dinámica
Desarrollo de página web dinámicaDesarrollo de página web dinámica
Desarrollo de página web dinámica
 
S3-DAW-2022S1.pptx
S3-DAW-2022S1.pptxS3-DAW-2022S1.pptx
S3-DAW-2022S1.pptx
 
Programacion web
Programacion webProgramacion web
Programacion web
 
Java Scripts
Java ScriptsJava Scripts
Java Scripts
 
Definición y función de lenguaje java script
Definición y  función de lenguaje java scriptDefinición y  función de lenguaje java script
Definición y función de lenguaje java script
 
Guia java script
Guia java scriptGuia java script
Guia java script
 
Trabajo java
Trabajo javaTrabajo java
Trabajo java
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java
 
Java desde 0
Java desde 0Java desde 0
Java desde 0
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Tipo de-lenguaje-de-programación-java-script-jaime-monsalve
Tipo de-lenguaje-de-programación-java-script-jaime-monsalveTipo de-lenguaje-de-programación-java-script-jaime-monsalve
Tipo de-lenguaje-de-programación-java-script-jaime-monsalve
 
Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)
 
Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1
 
Presentacion de ruby
Presentacion de rubyPresentacion de ruby
Presentacion de ruby
 
Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetos
 
MANUAL DE JAVA
MANUAL DE JAVAMANUAL DE JAVA
MANUAL DE JAVA
 
Java desde cero
Java desde ceroJava desde cero
Java desde cero
 

Más de Pedro Ramos

Resumen conversion a relacional
Resumen conversion a relacionalResumen conversion a relacional
Resumen conversion a relacionalPedro Ramos
 
Lección 4.2. Programas. Word Pad II
Lección 4.2. Programas. Word Pad IILección 4.2. Programas. Word Pad II
Lección 4.2. Programas. Word Pad IIPedro Ramos
 
Lección 4.1. programas. word pad
Lección 4.1. programas. word padLección 4.1. programas. word pad
Lección 4.1. programas. word padPedro Ramos
 
Lección 3.3 propiedades y accesorios. calculadora
Lección 3.3 propiedades y accesorios. calculadoraLección 3.3 propiedades y accesorios. calculadora
Lección 3.3 propiedades y accesorios. calculadoraPedro Ramos
 
Lección 3.2 propiedades y accesorios. programas
Lección 3.2 propiedades y accesorios. programasLección 3.2 propiedades y accesorios. programas
Lección 3.2 propiedades y accesorios. programasPedro Ramos
 
Lección 3.1 propiedades y accesorios. papel tapiz
Lección 3.1 propiedades y accesorios. papel tapizLección 3.1 propiedades y accesorios. papel tapiz
Lección 3.1 propiedades y accesorios. papel tapizPedro Ramos
 
Lección 2.7. sistema operativo. apagar el equipo
Lección 2.7. sistema operativo. apagar el equipoLección 2.7. sistema operativo. apagar el equipo
Lección 2.7. sistema operativo. apagar el equipoPedro Ramos
 
Lección 2.6. sistema operativo. papelera de reciclaje
Lección 2.6. sistema operativo. papelera de reciclajeLección 2.6. sistema operativo. papelera de reciclaje
Lección 2.6. sistema operativo. papelera de reciclajePedro Ramos
 
Lección 2.5. sistema operativo. eliminar archivos
Lección 2.5. sistema operativo. eliminar archivosLección 2.5. sistema operativo. eliminar archivos
Lección 2.5. sistema operativo. eliminar archivosPedro Ramos
 
Lección 2.4. sistema operativo. seleccionar archivos
Lección 2.4. sistema operativo. seleccionar archivosLección 2.4. sistema operativo. seleccionar archivos
Lección 2.4. sistema operativo. seleccionar archivosPedro Ramos
 
Lección 2.3. Sistema Operativo. Trabajar con Archivos
Lección 2.3. Sistema Operativo. Trabajar con ArchivosLección 2.3. Sistema Operativo. Trabajar con Archivos
Lección 2.3. Sistema Operativo. Trabajar con ArchivosPedro Ramos
 
Leccion 2.2 sistema operativo. carpetas
Leccion 2.2 sistema operativo. carpetasLeccion 2.2 sistema operativo. carpetas
Leccion 2.2 sistema operativo. carpetasPedro Ramos
 
Leccion 1.2 conociendo mi computadora
Leccion 1.2 conociendo mi computadoraLeccion 1.2 conociendo mi computadora
Leccion 1.2 conociendo mi computadoraPedro Ramos
 
Leccion 2.1 sistema operativo. ventanas
Leccion 2.1 sistema operativo. ventanasLeccion 2.1 sistema operativo. ventanas
Leccion 2.1 sistema operativo. ventanasPedro Ramos
 
Leccion 1.3 historia de las computadoras
Leccion 1.3 historia de las computadorasLeccion 1.3 historia de las computadoras
Leccion 1.3 historia de las computadorasPedro Ramos
 
Ficha colorear 1
Ficha colorear 1Ficha colorear 1
Ficha colorear 1Pedro Ramos
 
T1 trabajo1navarrozuaraelisaramosruizpedropresentacion
T1 trabajo1navarrozuaraelisaramosruizpedropresentacionT1 trabajo1navarrozuaraelisaramosruizpedropresentacion
T1 trabajo1navarrozuaraelisaramosruizpedropresentacionPedro Ramos
 
Hoja se octubre14_andalucia
Hoja se octubre14_andaluciaHoja se octubre14_andalucia
Hoja se octubre14_andaluciaPedro Ramos
 
Leccion 1.1 Conociendo mi Computadora
Leccion 1.1 Conociendo mi ComputadoraLeccion 1.1 Conociendo mi Computadora
Leccion 1.1 Conociendo mi ComputadoraPedro Ramos
 

Más de Pedro Ramos (20)

Resumen conversion a relacional
Resumen conversion a relacionalResumen conversion a relacional
Resumen conversion a relacional
 
Lección 4.2. Programas. Word Pad II
Lección 4.2. Programas. Word Pad IILección 4.2. Programas. Word Pad II
Lección 4.2. Programas. Word Pad II
 
Lección 4.1. programas. word pad
Lección 4.1. programas. word padLección 4.1. programas. word pad
Lección 4.1. programas. word pad
 
Lección 3.3 propiedades y accesorios. calculadora
Lección 3.3 propiedades y accesorios. calculadoraLección 3.3 propiedades y accesorios. calculadora
Lección 3.3 propiedades y accesorios. calculadora
 
Lección 3.2 propiedades y accesorios. programas
Lección 3.2 propiedades y accesorios. programasLección 3.2 propiedades y accesorios. programas
Lección 3.2 propiedades y accesorios. programas
 
Lección 3.1 propiedades y accesorios. papel tapiz
Lección 3.1 propiedades y accesorios. papel tapizLección 3.1 propiedades y accesorios. papel tapiz
Lección 3.1 propiedades y accesorios. papel tapiz
 
Lección 2.7. sistema operativo. apagar el equipo
Lección 2.7. sistema operativo. apagar el equipoLección 2.7. sistema operativo. apagar el equipo
Lección 2.7. sistema operativo. apagar el equipo
 
Lección 2.6. sistema operativo. papelera de reciclaje
Lección 2.6. sistema operativo. papelera de reciclajeLección 2.6. sistema operativo. papelera de reciclaje
Lección 2.6. sistema operativo. papelera de reciclaje
 
Lección 2.5. sistema operativo. eliminar archivos
Lección 2.5. sistema operativo. eliminar archivosLección 2.5. sistema operativo. eliminar archivos
Lección 2.5. sistema operativo. eliminar archivos
 
Lección 2.4. sistema operativo. seleccionar archivos
Lección 2.4. sistema operativo. seleccionar archivosLección 2.4. sistema operativo. seleccionar archivos
Lección 2.4. sistema operativo. seleccionar archivos
 
Lección 2.3. Sistema Operativo. Trabajar con Archivos
Lección 2.3. Sistema Operativo. Trabajar con ArchivosLección 2.3. Sistema Operativo. Trabajar con Archivos
Lección 2.3. Sistema Operativo. Trabajar con Archivos
 
Leccion 2.2 sistema operativo. carpetas
Leccion 2.2 sistema operativo. carpetasLeccion 2.2 sistema operativo. carpetas
Leccion 2.2 sistema operativo. carpetas
 
Leccion 1.2 conociendo mi computadora
Leccion 1.2 conociendo mi computadoraLeccion 1.2 conociendo mi computadora
Leccion 1.2 conociendo mi computadora
 
Leccion 2.1 sistema operativo. ventanas
Leccion 2.1 sistema operativo. ventanasLeccion 2.1 sistema operativo. ventanas
Leccion 2.1 sistema operativo. ventanas
 
Leccion 1.3 historia de las computadoras
Leccion 1.3 historia de las computadorasLeccion 1.3 historia de las computadoras
Leccion 1.3 historia de las computadoras
 
Ficha colorear 1
Ficha colorear 1Ficha colorear 1
Ficha colorear 1
 
T1 trabajo1navarrozuaraelisaramosruizpedropresentacion
T1 trabajo1navarrozuaraelisaramosruizpedropresentacionT1 trabajo1navarrozuaraelisaramosruizpedropresentacion
T1 trabajo1navarrozuaraelisaramosruizpedropresentacion
 
Hoja se octubre14_andalucia
Hoja se octubre14_andaluciaHoja se octubre14_andalucia
Hoja se octubre14_andalucia
 
Leccion 1.1 Conociendo mi Computadora
Leccion 1.1 Conociendo mi ComputadoraLeccion 1.1 Conociendo mi Computadora
Leccion 1.1 Conociendo mi Computadora
 
BBCode
BBCodeBBCode
BBCode
 

Último

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 

Último (16)

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

T1 trabajo1navarrozuaraelisaramosruizpedro

  • 1. IES Gran Capitán Módulo: Desarrollo Web en entorno cliente Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web” Lenguajes de programación: JavaScript Fecha entrega: 08-10-2014 Autores: Elisa Navarro Zuara Pedro J. Ramos Ruiz IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org informatica@iesgrancapitan.org
  • 2. Lenguajes de programación: JavaScript 2 1 INTRODUCCIÓN JavaScript es un lenguaje de programación interpretado y orientado a objetos, por lo que no es necesario compilar los programas para ejecutarlos. En otras palabras, los programas escritos con JavaScript se pueden probar directamente en cualquier navegador sin necesidad de procesos intermedios. JavaScript es un lenguaje de programación que se utiliza principalmente para crear páginas web dinámicas. Una página web dinámica es aquella que incorpora efectos como texto que aparece y desaparece, animaciones, acciones que se activan al pulsar botones y ventanas con mensajes de aviso al usuario. JavaScript se diseñó con una sintaxis similar al C, aunque adopta nombres y convenciones del lenguaje de programación Java. Sin embargo, JavaScript no guarda ninguna relación directa con el lenguaje de programación Java. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 3. Lenguajes de programación: JavaScript 3 2 HISTORIA En 1995, Brendan Eich trabajaba en Netscape Communications Corporation, la compañía que publicó el famoso Netscape Navigator, entonces principal competidor de Internet Explorer. Brendan desarrolló LiveScript un lenguaje de script que se basa en el lenguaje Java. Netscape inició el desarrollo de una versión del cliente LiveScript, que pasó a llamarse JavaScript, en homenaje al lenguaje Java creado por Sun Microsystems. En ese momento, el lenguaje Java era cada vez más popular, y Brendan Eich, el padre de JavaScript, al llamarlo JavaScript en lugar de LiveScript era una forma de publicidad de Java y JavaScript en sí. Atención, al final, estos dos lenguajes son radicalmente diferentes, no vayas a confundir Java y JavaScript, pues operan de forma diferente. JavaScript fue lanzado en diciembre de 1995 y estaba integrado en Netscape Navigator 2. El lenguaje fue tan exitoso, que Microsoft desarrolló una versión similar llamada JScript, que se instalaba en Internet Explorer 3, en 1996. Netscape decidió enviar su versión de JavaScript a ECMA International (European Computer Manufacturers Association, la Asociación Europea de Normalización) para que el lenguaje fuera normalizado, es decir para que se creara una referencia del lenguaje y que así pudiera ser utilizado por otras personas y embebidos en otro software. ECMA International estandarizó el lenguaje con el nombre de ECMAScript. La versión más conocida es utilizada en todo el mundo, es la versión ECMAScript 3, publicado en diciembre de 1999 En enero de 2009, el proyecto CommonJS fue fundado con el objetivo de especificar una librería para uso de tareas comunes principalmente para el desarrollo fuera del navegador web. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 4. Lenguajes de programación: JavaScript 4 3 CARACTERÍSTICAS DE JAVASCRIPT Las siguientes características son comunes a todas las implementaciones que se ajustan al estándar ECMAScript, salvo que se indique expresamente lo contrario. 3.1 Imperativo y estructurado JavaScript soporta gran parte de la sintaxis de la programación estructurada de C. Con una salvedad: en C, el ámbito de las variables alcanza al bloque en el cual fueron definidas; sin embargo, en JavaScript esto no es soportado, puesto que el ámbito de las variables es el de la función en la cual fueron declaradas. Esto cambia con la versión de JavaScript 1.7, ya que soporta block scoping por medio de la palabra clave let. Como en C, JavaScript hace distinción entre expresiones y sentencias. Una diferencia sintáctica con respecto a C es la inserción automática de punto y coma, es decir, en JavaScript los puntos y comas que finalizan una sentencia pueden ser omitidos. 3.2 Dinámico 3.2.1 Tipado dinámico Como en la mayoría de lenguajes de scripting, el tipo está asociado al valor, no a la variable. Por ejemplo, una variable x en un momento dado puede estar ligada a un número y más adelante, religada a una cadena. JavaScript soporta varias formas de comprobar el tipo de un objeto. Una forma de saberlo es por medio de la palabra clave typeof. 3.2.2 Objetual JavaScript está formado casi en su totalidad por objetos. Los objetos en JavaScript son arrays asociativos, mejorados con la inclusión de prototipos. Las propiedades y sus valores pueden ser creados, cambiados o eliminados en tiempo de ejecución. JavaScript tiene un pequeño número de objetos predefinidos como son Function y Date. 3.2.3 Evaluación en tiempo de ejecución JavaScript incluye la función eval que permite evaluar expresiones como expresadas como cadenas en tiempo de ejecución. Por ello se recomienda que eval sea utilizado con precaución y que se opte por utilizar la función JSON.parse() en la medida de lo posible, pues resulta mucho más segura. 3.3 Funcional A las funciones se les suele llamar ciudadanos de primera clase; son objetos en sí mismos. Como tal, poseen propiedades y métodos, como .call() y .bind(). Una función anidada es una función definida dentro de otra. 3.4 Prototípico 3.4.1 Prototipos JavaScript usa prototipos en vez de clases para el uso de herencia. Es posible llegar a emular muchas de las características que proporcionan las clases en lenguajes orientados a objetos tradicionales por medio de prototipos en JavaScript. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 5. Lenguajes de programación: JavaScript 5 3.4.2 Funciones como constructores de objetos Las funciones también se comportan como constructores. ECMAScript 5 ofrece el método Object.create, permitiendo la creación explícita de una instancia sin tener que heredar automáticamente del prototipo de Object. Se pueden añadir nuevos métodos modificando el prototipo del objeto usado como constructor. Constructores predefinidos en JavaScript, como Array u Object, también tienen prototipos que pueden ser modificados. Aunque esto sea posible se considera una mala práctica modificar el prototipo de Object ya que la mayoría de los objetos en JavaScript heredan los métodos y propiedades del objeto prototype. 3.5 Otras características 3.5.1 Entorno de ejecución JavaScript normalmente depende del entorno en el que se ejecute (por ejemplo, en un navegador web) para ofrecer objetos y métodos por los que los scripts pueden interactuar con el "mundo exterior". De hecho, depende del entorno para ser capaz de proporcionar la capacidad de incluir o importar scripts (por ejemplo, en HTML por medio del tag <script>). 3.5.2 Funciones variádicas Un número indefinido de parámetros pueden ser pasados a la función. La función puede acceder a ellos a través de los parámetros o también a través del objeto local arguments. Las funciones variádicas también pueden ser creadas usando el método .apply(). 3.5.3 Funciones como métodos A diferencia de muchos lenguajes orientados a objetos, no hay distinción entre la definición de función y la definición de método. Más bien, la distinción se produce durante la llamada a la función; una función puede ser llamada como un método. Cuando una función es llamada como un método de un objeto, la palabra clave this, representa al objeto que invocó dicha función. 3.5.4 Arrays y la definición literal de objetos Al igual que muchos lenguajes de script, arrays y objetos pueden ser creados con una sintaxis abreviada. De hecho, estos literales forman la base del formato de datos JSON. 3.5.5 Expresiones regulares JavaScript también soporta expresiones regulares de una manera similar a Perl, que proporcionan una sintaxis concisa y poderosa para la manipulación de texto que es más sofisticado que las funciones incorporadas a los objetos de tipo string. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 6. Lenguajes de programación: JavaScript 6 3.6 Extensiones específicas del fabricante JavaScript se encuentra oficialmente bajo la organización de Mozilla Foundation, y nuevas características del lenguaje son añadidas periódicamente. Sin embargo, sólo algunos motores JavaScript soportan estas características: • Las propiedades get y set. • Cláusulas catch condicionales. • Protocolo iterador adoptado de Python. • Corrutinas también adoptadas de Python. • Generación de listas y expresiones por comprensión también adoptado de Python. • Establecer el ámbito a bloque a través de la palabra clave let. • Desestructuración de arrays y objetos. • Expresiones concretas en funciones (function(args) expr). • ECMAScript para XML (E4X), una extensión que añade soporte nativo XML a ECMAScript. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 7. Lenguajes de programación: JavaScript 7 4 SINTAXIS Y SEMÁNTICA La sintaxis de un lenguaje de programación se define como el conjunto de reglas que deben seguirse al escribir el código fuente de los programas para considerarse como correctos para ese lenguaje de programación. La sintaxis de JavaScript es muy similar a la de otros lenguajes de programación como Java y C. Las normas básicas que definen la sintaxis de JavaScript son las siguientes: • No se tienen en cuenta los espacios en blanco y las nuevas líneas: el intérprete de JavaScript ignora cualquier espacio en blanco sobrante, por lo que el código se puede ordenar de forma adecuada para entenderlo mejor (tabulando las líneas, añadiendo espacios, creando nuevas líneas, etc.). Código JavaScript: instruccion_1; instruccion_1_1; instruccion_1_2; instruccion_2; • Se distinguen las mayúsculas y minúsculas: al igual que sucede con la sintaxis de las etiquetas y elementos XHTML. Sin embargo, si en una página XHTML se utilizan indistintamente mayúsculas y minúsculas, la página se visualiza correctamente, siendo el único problema la no validación de la página. En cambio, si en JavaScript se intercambian mayúsculas y minúsculas el script no funciona. • Se pueden incluir comentarios: los comentarios se utilizan para añadir información en el código fuente del programa. Aunque el contenido de los comentarios no se visualiza por pantalla, si que se envía al navegador del usuario junto con el resto del script, por lo que es necesario extremar las precauciones sobre la información incluida en los comentarios. Hay dos tipos de comentarios: • Comentarios de fin de línea. Se utilizan para comentar una instrucción. Comienza con dos barras de división. • Comentarios multilínea. Este tipo permite saltos de línea. Un comentario multilínea comienza con /* y termina con */. Código JavaScript: //A continuación se muestra un comentario alert("Hola Mundo”); /* Los comentarios de varias líneas son muy útiles cuando se necesita incluir bastante información en los comentarios */ alert("Hola Mundo”); • No se define el tipo de las variables: al crear una variable, no es necesario indicar el tipo de dato que almacenará. De esta forma, una misma variable puede almacenar diferentes tipos de datos durante la ejecución del script. • No es necesario terminar cada sentencia con el carácter de punto y coma (;): en la mayoría de lenguajes de programación, es obligatorio terminar cada sentencia con el carácter (;). Aunque JavaScript no obliga a hacerlo, es conveniente seguir la tradición de terminar cada sentencia con el carácter del punto y coma (;). IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 8. Lenguajes de programación: JavaScript 8 Ejemplo de un programa escrito en JavaScript: function mayor() { //En primer lugar se declaran las variables. var num1,num2; //Se piden los valores por pantalla. num1=parseInt(prompt("Introduce un número","")); num2=parseInt(prompt("Introduce un número","")); //Se comparan los números introducidos por pantalla. if (num1>num2) { document.write("El número "+num1+" es mayor que el número "+num2); } else { if (num2>num1) { document.write("El número "+num2+" es mayor que el número "+num1); } else { document.write("El número "+num1+" es igual que el número "+num2); } } } IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 9. Lenguajes de programación: JavaScript 9 5 PROS Y CONTRAS Ventajas • JavaScript se ejecuta en el lado del cliente. Esto significa que el código se ejecuta en el procesador del usuario en lugar de un servidor web con el consiguiente ahorro de ancho de banda y la tensión en el servidor web. • JavaScript es un lenguaje relativamente fácil. El lenguaje JavaScript es relativamente fácil de aprender y se compone de sintaxis que está en Inglés. Utiliza el modelo DOM que proporciona un montón de funcionalidad, escrito previamente, a los diversos objetos en las páginas que hacen que sea muy fácil para desarrollar un script para resolver un objetivo personalizado. • JavaScript es relativamente rápido para el usuario final. A medida que se ejecuta el código en la computadora, los resultados de los usuarios y el procesamiento se ha completado casi al instante en función de la tarea, ya que no tiene que ser procesado en el servidor web del sitio y se envía de vuelta al usuario local, así como el ancho de banda del servidor. • Extensión de funciones a las páginas web. Add-ons como Greasemonkey permiten a los desarrolladores de JavaScript escribir fragmentos de JavaScript que se pueden ejecutar en las páginas web que desee para ampliar su funcionalidad. Podemos escribir y utilizar un add-on como Greasemonkey para implementarlo en la página web. Inconvenientes • Cuestiones de seguridad. Fragmentos de JavaScript se ejecutan en servidores del cliente inmediatamente y por lo tanto también se pueden utilizar para explorar el sistema del usuario. Si bien, se establece una cierta restricción para los estándares web modernos en los navegadores, el código malicioso todavía se puede ejecutar por encima de las restricciones establecidas. • Prestación JavaScript. Diferentes motores de diseño pueden hacer JavaScript diferente que resulta en falta de coherencia en términos de funcionalidad y la interfaz. Mientras que las últimas versiones de JavaScript se han orientado hacia un estándar universal, todavía existen ciertas variaciones. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 10. Lenguajes de programación: JavaScript 10 6 CONCLUSIÓN En conclusión: • JavaScript es un lenguaje de programación interpretado y orientado a objetos, que se utiliza principalmente para crear páginas web dinámicas. • Además, JavaScript no guarda ninguna relación directa con el lenguaje de programación Java. • JavaScript está normalizado por ECMA International como el nombre ECMAScript Language Reference. • Imperativo y estructurado. • Débilmente tipado, está formado casi en su totalidad por objetos y se evalúa en tiempo de ejecución. • A las funciones se les suele llamar ciudadanos de primera clase; son objetos en sí mismos. • JavaScript usa prototipos en vez de clases para el uso de herencia. • El entorno de ejecución de JavaScript normalmente es el navegador web. • Un número indefinido de parámetros pueden ser pasados a la función. • A diferencia de muchos lenguajes orientados a objetos, no hay distinción entre la definición de función y la definición de método. • Al igual que muchos lenguajes de script, arrays y objetos pueden ser creados con una sintaxis abreviada. • JavaScript también soporta expresiones regulares de una manera similar a Perl, que proporcionan una sintaxis concisa y poderosa para la manipulación de texto. • JavaScript se encuentra oficialmente bajo la organización de Mozilla Foundation. • La sintaxis de JavaScript es muy similar a la de otros lenguajes de programación como Java y C. Las normas básicas que definen la sintaxis de JavaScript son las siguientes: • No se tienen en cuenta los espacios en blanco y las nuevas líneas. • Se distinguen las mayúsculas y minúsculas. • Se pueden incluir comentarios. • No se define el tipo de las variables. • No es necesario terminar cada sentencia con el carácter de punto y coma (;). • Ventajas de JavaScript: • JavaScript se ejecuta en el lado del cliente. • JavaScript es un lenguaje relativamente fácil. • JavaScript es relativamente rápido para el usuario final. • Extensión de funciones a las páginas web. • Inconvenientes de JavaScript: • Cuestiones de seguridad. • Prestación JavaScript. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 11. Lenguajes de programación: JavaScript 11 7 CONCEPTOS CLAVE · Script: cada uno de los programas, aplicaciones o trozos de código creados con el lenguaje de programación JavaScript. Unas pocas líneas de código forman un script y un archivo de miles de líneas de JavaScript también se considera un script. A veces se traduce al español directamente como "guión", aunque script es una palabra más adecuada y comúnmente aceptada. · Sentencia: cada una de las instrucciones que forman un script. · Palabras reservadas: son las palabras (en inglés) que se utilizan para construir las sentencias de JavaScript y que por tanto no pueden ser utilizadas libremente. Las palabras actualmente reservadas por JavaScript son: break, case, catch, continue, default, delete, do, else, finally, for, function, if, in, instanceof, new, return, switch, this, throw, try, typeof, var, void, while, with. · Interpretado: es ejecutado por medio de un intérprete. · Orientado a objetos: usa los objetos en sus interacciones para diseñar aplicaciones y programas informáticos. · Variables: una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre simbólico (un identificador) que está asociado a dicho espacio. Ese espacio contiene una cantidad o información conocida o desconocida, es decir un valor. · Prototipos: son un estilo en el cual los objetos son creados mediante la clonación de otros objetos o mediante la escritura de código por parte del programador. De esta forma los objetos ya existentes pueden servir de prototipos para los que el programador necesite crear. · Herencia: la herencia facilita la creación de objetos a partir de otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase. · Arrays: es una zona de almacenamiento continuo, que contiene una serie de elementos del mismo tipo. · JSON: es un formato ligero para el intercambio de datos, además es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML. · Expresiones regulares: son una secuencia de caracteres que forman un patrón de búsqueda, principalmente utilizadas para la búsqueda de patrones de cadenas de caracteres u operaciones de sustituciones. · Modelo DOM: es una interfaz de programación de aplicaciones para acceder, añadir y cambiar dinámicamente contenido estructurado en documentos con lenguajes como ECMAScript (JavaScript). IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 12. Lenguajes de programación: JavaScript 12 8 BIBLIOGRAFIA · Rafael Menéndez-Barzanallana Asensio. Lenguaje de programación JavaScript. Consultado en: http://www.um.es/docencia/barzana/DAWEB/Lenguaje-de-programacion- JavaScript-1.pdf · Libros Web. Introducción a JavaScript. Consultado en: http://librosweb.es/javascript/capitulo_1.html · W3Schools. Tutorial de JavaScript. Consultado en: http://www.w3schools.com/js/default.asp IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 13. Lenguajes de programación: JavaScript 13 9 ÍNDICE 1INTRODUCCIÓN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2HISTORIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3CARACTERÍSTICAS DE JAVASCRIPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4SINTAXIS Y SEMÁNTICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 5PROS Y CONTRAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6CONCLUSIÓN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 7CONCEPTOS CLAVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 8BIBLIOGRAFIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 9ÍNDICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org