JavaScript Luis Zarza. JavaScript, Historia Inicialmente se llamaba LiveScript Lenguaje de guiones...

53
JavaScript Luis Zarza

Transcript of JavaScript Luis Zarza. JavaScript, Historia Inicialmente se llamaba LiveScript Lenguaje de guiones...

Page 1: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

JavaScript

Luis Zarza

Page 2: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

JavaScript, Historia Inicialmente se llamaba LiveScriptLenguaje de guiones (script)Respaldado por SUN en 1995:

JavaScript

Page 3: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Características generales Es un lenguaje interpretado Se ejecuta en el cliente, nunca en el servidor No es (muy) extensible Parte de un conjunto limitado de objetos y

clases No permite interacción cliente-servidor,

únicamente opera en el cliente (Relativamente) integrado a HTML

Page 4: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Aplicaciones de JavaScriptDiseñado para programas sencillos y

pequeñosRealiza tareas repetitivasDiseñado para programar eventos de

usuarioMuy utilizado para validación de datosMuy utilizado para poner efectos en las

páginas de Web

Page 5: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Ventajas de JavaScriptDesarrollo rápido (Relativamente) fácil de aprender Independencia de plataformaGastos mínimos

Page 6: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Desventajas de JavaScriptRango limitado de métodos integradosNo cuenta con ocultación de código

Page 7: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Objetos La utilización de "objetos" es un medio de

organizar la información Se utilizan para describir entidades reales o

imaginarias En su descripción se especifican:

Propiedades Características que distinguen objetos del mismo tipo o

clase Métodos

Tareas que se pueden efectuar con las propiedades de un tipo de objeto

Page 8: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Clases de objetos Una clase de objeto especifica qué propiedades y

métodos caracterizan a sus objetos, pero no asigna valores automóvil

marca modelo

persona nombre edad

estudiante nombre edad carrera

Page 9: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Instancias de objetos Una instancia de objeto es un objeto de

alguna clase, con valores en su propiedades persona

Nombre: Luis Edad: 36

alumno Nombre: Juan Edad: 19 Carrera: Diseño Gráfico

Page 10: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Jerarquías de objetosLos objetos pueden estar referidos a

atributos de otros objetos mediosdetransporte.bicicleta.manubrio

Page 11: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Objetos integrados en el Navegador La mayoría parte del objeto base del navegador

window Location History Document

Forms Anchors

Otros objetos no están relacionados con la ventana actual string math date

Page 12: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Creación de objetos propios Se pueden definir y crear objetos propios

para describir información Se definen, estableciendo su propiedades y sus

métodos Casa

# de cuartos metros cuadrados precio define_precio()

Se crean, generando instancias y asignando valores

Page 13: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Incorporación a HTMLLa incorporación se hace con la

etiqueta SCRIPT<script>

Código en JavaScript

</script>

Page 14: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Atributos de la etiqueta SCRIPTSRC

Especifica el URL del archivo con JavaScript, de no estar en la misma página. El archivo deberá tener la extensión .js

LANGUAGE Especifica el lenguaje de guiones utilizado,

ya que JavaScript no es el único que se puede utilizar

Page 15: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Ocultamiento de guiones Algunos navegadores no soportan scripts, por lo

que ignorarán la marca <SCRIPT>, pero no el contenido

Solución: ocultarlo como comentario<script language="JavaScript"><!– Ocultar guion

Programa en JavaScript

// fin de ocultamiento --></script>

Page 16: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Un ejemplo de un script<html><head><title>Un ejemplo</title></head><body>Aquí hay un script:<script language="JavaScript"><!-- Ocultar// Salida "Funciona!"document.writeln( "Funciona!<br>" );//Dejar de ocultar --></script></body></html>

Page 17: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Bloques de comandosSe pueden agrupar comandos

utilizando las llaves { y }{

comando

comando

}

Page 18: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Bloques de comandosLos bloques se pueden anidar

{un comando{

otro comandootro comando

}}

Page 19: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Salida de texto La función básica de casi cualquier programa

es producir texto con resultados En JavaScript, la operación básica es la

salida de texto en la ventana del navegador Se utilizan dos comandos

document.write( )document.writeln( )

Se pueden incluir marcasdocument.write( "<b>Hola</b>" );

Page 20: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Ventanas de diálogoHacen aparecer ventanas adicionales

con mensajes o entradas de datos Advertencia:

alert( "Haz click en OK para continuar" );

Entrada:prompt( "¿Cuál es tu color favorito?", "azul" );

document.write( prompt( "Tu edad", "19" ) );

Page 21: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Tipos de datos Para representar la información, se utilizan cuatro

tipos de dato Números

17, 21.3, 34e3 (decimales) 056 (octal) 0x5F (hexadecimal)

Cadenas "Hola!"

Boleanos true false

Nulos null

Page 22: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Variables Son identificadores que pueden contener

valores, y éstos pueden variar su valor No es preciso declararlas, pero se recomienda

Declaración var ejemplo;

Declaración y asignación var ejemplo = "Hola";

Asignación ejemplo = "Hola";

Invocación document.write( ejemplo );

Page 23: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Expresiones Colección de variables, operadores y otras

expresiones que se evalúan a un solo valor Asignación

asigna un valor a una variable Aritméticas

evalúan un número Cadenas

evalúan una cadena Lógicas

evalúan un valor booleano

Page 24: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Expresiones de asignaciónvariable = expresión

Evalúa la expresión, y el resultado se asigna a la variable

variable += expresión Evalúa la expresión, y el resultado mas el

valor de la variable se asigna a la variable

Page 25: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Operadores aritméticos + Suma - Resta * Multiplicación / División % Módulo (residuo de una división) Ejemplo

meses = edad * 12; Combinados

suma += dato;

Page 26: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Operadores lógicos &&

"y" lógico, devuelve true cuando ambos operandos son verdaderos y falso en otro caso

|| "o" lógico, devuelve true cuando alguno de los

operandos es verdadero

! "no" lógico, devuelve true si el operando es falso,

y false si el operando es verdadero

Page 27: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Operadores de comparación ==

iguales, devuelve verdadero si los operandos son iguales

!= diferentes

> < >= <=

Page 28: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Operador condicional Permite evaluar una expresión lógica, y

devolver valores diferentes en consecuencia (condición) ? valor1 : valor2

Ejemplo ( nombre == "Luis" ) ? "Hola, Jefe" : "Hola,

extraño" Dependiendo del nombre, la expresión se

evaluará como "Hola, Jefe" o "Hola, extraño" respuesta = ( edad<18 ) ? "Eres menor" : "Ya

estás grandecito" ;

Page 29: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Operadores de cadenaPermiten la unión de cadenas

"Hola, " + "qué tal!" bienvenida += ", se bienvenido"

Page 30: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

si (control de flujo)Se utilizan para que el programa tome

decisiones de qué instrucciones ejecutarif condicion

comando;Ejemplo

if( día == "domingo" )document.write( "Hoy es domingo" );

Page 31: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

si-sinoSe considera el caso de que no se

cumpla la condiciónif condicion

comando;

else

otro comando;

Page 32: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Utilización de bloques con el if Si se desean ejecutar varios comandos en

lugar de sólo uno, se utilizan bloquesif condicion {

comando

comando

} else {

comando

comando

}

Page 33: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

FuncionesPermiten agrupar código para

desempeñar una tarea o función específica y que puede usarse muchas veces en un programa

Page 34: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Funciones: definición La definición establece qué es lo que hace la

funciónfunction nombre_de_funcion( parámetros,

argumentos ) {bloque de comandos

}

Ejemplofunction despNombre( nombre ) {

document.write( "<hr>tu nombre es<b>" );document.write( nombre )document.write( "</b><hr>" );

}

Page 35: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Retorno de resultadosEn los entornos de programación, a las

funciones que no retornan resultados se les llama "procedimientos"

Si retornan resultados son "funciones"function cubo( numero ) {

return numero * numero * numero;}

Page 36: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Funciones: definición en el encabezadoEn general el código de Java puede ir

en cualquer parteSi va a generar texto para la página, el

código debe estar donde debe generar el texto

Se recomienda poner la definición de las funciones en el encabezado

Page 37: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Funciones: invocación (ponerlas a trabajar)Para hacer que las funciones hagan su

trabajo, se les invoca desde el programa despNombre( "Luis" );

Si devuelven resultado, pueden formar parte de una expresión a=cubo( 4 )+1;

Page 38: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Funciones: un ejemplo<html><head><title>Ejemplo</title>

<script language="JavaScript"><!-- ocultar...function prueba( pregunta ) {

var resul=eval( pregunta );var salida="Qué es "+pregunta+"?";var correc='<img src="corr.gif">';var incorrec='<img src="incorr.gif">';var resp=prompt( salida, "0" );return( resp==resul )? correc:incorrec;

}//deja de ocultar --></script></head>

Page 39: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Funciones: un ejemplo (cont)

<body><script language="JavaScript"><!– ocultarvar res=prueba( "10 + 10" );document.write( res );//deja de ocultar --></script></body></html>

Page 40: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

EventosSeñales generadas cuando ocurren

acciones específicasBrindan la base para la interactividadSe disparan en el visualizador por

acciones del usuario (principalmente)Se pueden construir acciones que

reacciones a los eventos

Page 41: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos Ejemplos de eventos:

blur Cuando el usuario hace click fuera de un campo en un

formulario click

Cuando el usuario hace click en una liga o en un elemento de un formulario

change Cuando el usuario cambia el valor de un campo

focus Cuando se activa el foco en una entrada

load Cuando se carga una página del navegador

Page 42: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos Más ejemplos

mouseover Cuando el cursor (ratón) pasa por encima de una liga

select Cuando el usuario selecciona un campo de un elemento

en un formulario submit

Cuando el usuario envía un formulario unload

Cuando un usuario abandona una página (para cerrar la ventana o cambiar de página)

Page 43: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos: manejadores Los manejadores de eventos son las

instrucciones que se ejecutan cuando ocurre un evento <MARCA ATRIBUTOS manejador="Programa

JavaScript"> Poniendo funciones:

<input type="text" onChange="checaCampo(this)"> Poniendo varias instrucciones

<input type="text" onChange="if( parseInt(this.value) <= 5 ) {alert( 'Ponga un número mayor que 5.' );}">

Page 44: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos: palabra clave "this"Hace referencia al objeto que produjo el

evento

Page 45: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos: onLoad y onUnload <html>

<head><title>Ejemplo</title></head><body

onLoad="alert('Bienvenido!');"onUnload="alert('Adios!');">

<h1>Página efusiva</h1></body></html>

Page 46: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos: GuacamoleonUnload="

window.open('maliciosa.html' );"

Page 47: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Eventos: onMouseOver <a href="#"

onMouseOver="document.the_image.src='stuff/js_on.gif';" onMouseOut="document.the_image.src='stuff/js_off.gif';"><img src="stuff/js_des.gif" name="the_image" border="0"></a>

Page 48: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Posición de objetos y capasPodemos definir objetos y asignarles

atributos de posición y capas (entre otras cosas)

Se utiliza la marca <div> <div id="mono">

<img src="monito.gif"></div>

Page 49: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Ejemplo <html><head><title>Capas y Posicion</title>

<style type="text/css">#aaron {position: absolute;

left: 8px; top: 300px;width: 79px; height: 73px;z-index: 3;}

#desk {position: absolute;left:8px; top: 324px;width: 10px; height: 73px;z-index: -1;}

</style></head>

Page 50: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.

Ejemplo (cont) <body bgcolor="#aaaaaa" text="#4444ff">

<h1>Capas y posicion</h1><div id="aaron">

<img src="aaron.gif"></div><div id="desk">

<img src="desk.gif"></div>

</body></html>

Page 51: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.
Page 52: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.
Page 53: JavaScript Luis Zarza. JavaScript, Historia  Inicialmente se llamaba LiveScript  Lenguaje de guiones (script)  Respaldado por SUN en 1995: JavaScript.