03.11.2014 Views

Introduccion a AJAX - Web de jEsuSdA 8

Introduccion a AJAX - Web de jEsuSdA 8

Introduccion a AJAX - Web de jEsuSdA 8

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Introducción a <strong>AJAX</strong><br />

Capítulo 3. JavaScript avanzado<br />

var objeto = {<br />

"propiedad1": valor_simple_1,<br />

"propiedad2": valor_simple_2,<br />

"propiedad3": [array1_valor1, array1_valor2],<br />

"propiedad4": { "propiedad anidada": valor },<br />

"metodo1": nombre_funcion_externa,<br />

"metodo2": function() { ... },<br />

"metodo3": function() { ... },<br />

"metodo4": function() { ... }<br />

};<br />

En un mismo objeto se pue<strong>de</strong> utilizar <strong>de</strong> forma simultánea la notación tradicional <strong>de</strong> JavaScript y<br />

la notación JSON:<br />

var libro = new Object();<br />

libro.numeroPaginas = 150;<br />

libro.autores = [ {id: 50}, {id: 67} ];<br />

El ejemplo anterior se pue<strong>de</strong> reescribir utilizando solamente la notación tradicional:<br />

var libro = { numeroPaginas: 150 };<br />

libro.autores = new Array();<br />

libro.autores[0] = new Object();<br />

libro.autores[0].id = 50;<br />

libro.autores[1] = new Object();<br />

libro.autores[1].id = 67;<br />

El ejemplo anterior también se pue<strong>de</strong> reescribir utilizando exclusivamente la notación JSON:<br />

var libro = { numeroPaginas: 150, autores: [{id: 50}, {id: 67}] };<br />

Ejercicio 1<br />

Definir la estructura <strong>de</strong> un objeto que almacena una factura. Las facturas están formadas por la<br />

información <strong>de</strong> la propia empresa (nombre <strong>de</strong> la empresa, dirección, teléfono, NIF), la información<br />

<strong>de</strong>l cliente (similar a la <strong>de</strong> la empresa), una lista <strong>de</strong> elementos (cada uno <strong>de</strong> los cuales dispone <strong>de</strong><br />

<strong>de</strong>scripción, precio, cantidad) y otra información básica <strong>de</strong> la factura (importe total, tipo <strong>de</strong> iva,<br />

forma <strong>de</strong> pago).<br />

Una vez <strong>de</strong>finidas las propieda<strong>de</strong>s <strong>de</strong>l objeto, añadir un método que calcule el importe total <strong>de</strong> la<br />

factura y actualice el valor <strong>de</strong> la propiedad correspondiente. Por último, añadir otro método que<br />

muestre por pantalla el importe total <strong>de</strong> la factura.<br />

3.2. Clases<br />

Los objetos que se han visto hasta ahora son una simple colección <strong>de</strong> propieda<strong>de</strong>s y métodos que<br />

se <strong>de</strong>finen para cada objeto individual. Sin embargo, en la programación orientada a objetos, el<br />

concepto fundamental es el <strong>de</strong> clase.<br />

La forma habitual <strong>de</strong> trabajo consiste en <strong>de</strong>finir clases a partir <strong>de</strong> las cuales se crean los objetos<br />

con los que trabajan las aplicaciones. Sin embargo, JavaScript no permite crear clases similares a<br />

las <strong>de</strong> lenguajes como Java o C++. De hecho, la palabra class sólo está reservada para su uso en<br />

futuras versiones <strong>de</strong> JavaScript.<br />

www.librosweb.es 44

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!