javascript continuación

Post on 12-Jun-2015

136 Views

Category:

Internet

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Continuación JS

TRANSCRIPT

JavaScript

Contenido

• Versiones. • Repaso: Case Sensitivity. WhiteSpace & LineBreaks.

Optional semicolons. Comments. Literales. Identificadores Variables. Variable Scope. Palabras reservadas. Operadores. Void. Try Catch Finally. With. Objects. Arrays. Eventos, Input, Objects: DOM.

• Ejercicios-ejemplos.

JavaScript

• JavaScript:

Es un lenguaje imperativo, estructurado e interpretado con capacidad de implementar objetos (Orientado a Objetos).

JavaScript – Historia

• Creado (1995) como Mocha por NetScape (Brendan Eich).

• Mocha -> LiveScript -> JavaScript.• 1995 Netscape 2.0 incorpora soporte Java y renombra

LiveScript a JavaScript (objetivo comercial).• Microsoft JScript. IE 1996. IE 3.0.• W3C: DOM – Especificación JavaScript.• IE 6.0 – NetScape – Opera v7 – Mozilla v1.• 1997 JavaScript como standard de ECMA: ECMAScript.• JavaScript: marca registrada por Oracle.

JavaScript - Actores

JavaScript Versiones

• JavaScript se encuentra oficialmente bajo la organización Mozilla Foundation

• El último standard de ECMA es el ECMA-262 de Junio de 2011.

• La última versión del lenguaje JavaScript 1.8.5 del año 2011.

• Nuevas características del lenguaje son añadidas periódicamente.

Repasando

• Case Sensitive

Palabras reservadas en minúsculas siempre.

Online ONLINE online onLine 4 variables distintas

HTML no es CS valores atributos pueden confundirnos: onClick()

Repasando

• Espacios y saltos de línea

JavaScript ignora espacios, tabulaciones y saltos de línea entre tokens del lenguaje.

Una sola restricción: punto y coma.

Repasando

• Separar instrucciones: punto y coma.

Opcional pero la siguiente instrucción debe seguir en la siguiente línea (salto línea obligatorio)

Repasando

• Comentarios

// comentario para una sola línea

/* Comentario * para

** varias líneas*/

Repasando

• Literal: un valor

12 // número doce1.2 // número“hola” //string‘hola’ //stringtrue // booleano/javascript/gi //expresión regularnull // objeto ausencia

Repasando

• Identificadores para variables/funciones/label

Los identificadores se utilizan para dar nombre a variables, funciones y etiquetas.

El primer carácter debe ser una letra, un guión bajo o el signo $ y a continuación cualquier combinación de estos más números.

No pueden ser palabras reservadas.

Repasando

• VariablesSe declaran con varMúltiple declaración en una misma línea separar

con comas: var a, b=0, c=1;

Scope: alcance de definición de la variable.

Variables Scope

• Las variables son válidas dentro del módulo donde se las declara.

• Una variable global tiene scope global, puede estar definida en cualquier lugar dentro del script.

• Las variables locales son las definidas dentro de funciones. Tienen scope (local) dentro de la misma función.

Variable Scope

var scope = “global”; //Define una variable global

function checkscope() {var scope = “local”; //Define una local

document.write(scope); //Usa la variable local

}

checkscope(); //Imprime “local”

Variable Scope

Se puede omitir var y definir una variable globalemente:

scope = “global”;

Pero las variables locales deben definirse siempre con var

Variable Scope

scope = “global”; //Define una variable globalfunction checkscope() {

scope = “local”; //Cambia el valor de la globaldocument.write(scope); //Utiliza la variable globalmyscope = “local”; //Define variable globaldocument.write(myscope); //Usa la variable global

}checkscope(); //Imprime “locallocal”document.write(scope); //Imprime “local”document.write(myscope); //Imprime “local”

Variable Scope

• Los parámetros de funciones son variables locales.

• Las funciones no saben que variables están definidas como globales: definir todas con var

• Precedencia de Variables:– Las variables locales preceden a las globales.

Variable Scope

var scope = “global”; // variable globalfunction checkscope() {

var scope = “local”; // variable localfunction nested() {

var scope = “nested”; // variable local (otra)document.write(scope); // “nested”

}nested();

}checkscope();

Variable Scope

No hay scope en bloque: todas las variables definidasdentro de una función, no importa donde esténdeclaradas, tienen alcance dentro de la función.

function test(o) {var i=0;if (typeof o == ‘object’) {

var j=0;for (var k=0; k<10; k++) { document.write(k); // 0,1,…,9}document.write(k); // 10

}document.write(j); // 0 o undefined

}

Variable Scope

var scope = “global”;

function f() {alert(scope); // undefinedvar scope = “local”;alert(scope); // local

}

f();

Undefined

Existen 2 tipos de variables “undefined”

Undefined porque no tienen valor asignado

Undefined porque no han sido aún definidas, estas incurren en runtime error

var x; // está definida pero sin valoralert(x); // undefinedalert(u); // Uncaught ReferenceError: u is not defined

Null

• Null es un valor especial que indica “sin valor”.

Cuando una variable contiene el valor “null” significa que la misma no contiene un valor válido para un objeto, array, número, cadena o lógico.

En un contexto boolean, null se trata como false. En un contexto numérico, null se trata como 0. En un contexto string, null se trata como “null”.

Conversión de TiposContexto String Number Boolean Object

Valor

undefined “undefined” NaN false Error

null “null” 0 false Error

Cadena Cadena “numero” / NaN true Objeto cadena

Cadena vacía Cadena 0 false Objeto cadena

0 “0” Número false Objeto número

NaN “NaN” NaN false Objeto número

Palabras Reservadasbreak do if switch typeof

case else in this var

catch false instanceof throw void

continue finally new true while

default for null try with

delete function return

Operadores typeof

• typeof: es un operador unario que determina el tipo de operando.– Evalúa a: number, string y boolean.– Evalúa a object para arreglos, objetos y null.– Evalúa a function para funciones.– Evalúa a undefined operandos indefinidos.

Operadores instanceof

• instanceof: determina si un objeto es una instancia de una clase.– d instanceof Date(); // true si d tipo Date.– a instanceof Array; // true si a es un arreglo.– a instanceof Object; // true si a es un arreglo.

Continuará…

• Void. • Try Catch Finally. • With. • Arreglos & Objetos.• Manejo HTML DOM.• Manejo HTML input.• Manejo HTML Eventos.• Manejo HTML Objetos.

Void

• Operador unario• Descarta el tipo de su operando y devuelve

undefined.

Usos- forzar el valor undefined- <a href="javascript:void window.open();">Open window</a>

throw

Se utiliza para lanzar un error.Un error que deba ser atrapado

específicamente.

Es una señal de que una condición excepcional ha ocurrido.

throw new Error(‘Houston we have…’);

try catch finallyTry {

// sentencias [1]

}

catch(e){

// si error en [1]

}

finally{

// ejecución normal [1]

// break/continue/return [1]

// error capturado en catch

// error no capturado en [1]

// error no capturado en catch

}

With

• Se utiliza para alterar la cadena del scope en variables:– document.images[0].src = “imagen_1.jpg”;– document.images[0].width = 110;– document.images[0].height = 230;

with (document.images[0]) {

src = “imagen_1.jpg”;

width = 110;

height = 230;

}

top related