1) Javascript acepta OOP, pero es un poco particular con respecto a aproximaciones más tradicionales como las de Java o PHP.
2) Además, en Javascript podemos programar con programación estructurada (uso de funciones y datos por separado) o OOP.
Estos dos puntos hacen que Javascript no sea el mejor lenguaje para aprender a programar con orientación a objetos, pero esperamos que no sea un inconveniente para entender cómo se aplican los conceptos de OOP.
Sintaxis de OOP en Javascript
El proceso de instanciación se realiza, como en muchos otros lenguajes, por medio del operador "new".
//Operador new
var factura1 = new Factura();
La variable sobre la que guardo un objeto es igual que cualquier otra variable conocida hasta ahora. Esto lo podrás leer como "asigna en la variable factura1 el resultado que se produzca al instanciar un nuevo objeto de la clase Factura".
Nota: Ojo, en Javascript no existen las clases como tal. Esto va a cambiar en futuras revisiones del lenguaje, pero, como veremos más tarde, no existe la "clase Factura" como tal, sino que simplemente es una función.
El acceso a propiedades y métodos de los objetos se realiza por medio del operador punto ".", indicando primero el objeto (el nombre de la variable donde he almacenado un objeto), seguido de punto (.) y luego el nombre de la propiedad o método a acceder, teniendo en cuenta que los métodos al ser funciones, requieren los paréntesis detrás para realizar el paso de parámetros.
factura1.cliente = "EscuelaIT";
factura1.imprimir();
Ahora veamos cómo se define la clase factura, apreciando que no es más que una función. Eso es algo muy particular de Javascript, dado que en este lenguaje no existe el concepto de clase.
function Factura(){
this.imprimir = function(){alert("cliente: " + this.cliente);}}
Las operaciones de instanciación y de acceso a sus atributos o métodos se pueden hacer como hemos visto.
var factura1 = new Factura();
factura1.cliente = "Miguel";factura1.imprimir();
Objetos incorporados en Javascript
En Javascript, como en cualquier lenguaje, nos ofrecen una serie de librerías para realizar operaciones típicas, como trabajo con fechas, matemáticas, arrays, cadenas, etc. En este lenguaje esas funciones nos las ofrecen por medio de objetos incorporados. En esta exposición se hizo un rápido listado de los objetos incorporados y el sentido de su existencia:
- Math (cálculos matemáticos)
- Date (trabajo con fechas y horas)
- String (operaciones con cadenas de caracteres)
- Array (realizar cosas sobre los arrays)
- ...
Estos objetos incorporados los vimos ya en uso durante las clases del curso y en esta clase te explicamos cómo usarlos. Se vió un ejemplo de uso de las funciones de cadenas.
var cadena = "EscuelaIT";
alert (cadena.length);alert (cadena.toLowerCase());
Al ver ese código aprecia que en Javascript las cadenas de caracteres se comportan como si fueran objetos. Con cadena.length accedemos a la propiedad que contiene el número de caracteres de la longitud del string. Con cadena.toLowerCase() alteramos una cadena, donde puede haber mayúsculas y minúsculas, para que solo tenga minúsculas.
También vimos ejemplo del trabajo con la clase Date de Javascript, para trabajo con fechas.
var fecha = new Date();
var diames = fecha.getDate();var mes = fecha.getMonth() + 1;var ano = fecha.getFullYear();document.write("Hoy: " + diames + "/" + mes + "/" + ano);
En este caso creamos una nueva fecha y luego extraemos los valores de dias, meses y años, para luego imprimirlos en la página.
Nota: Observarás que document.write() es muy parecido a lo que acabamos de conocer como "invocación a un método", de hecho es un método (write) sobre un objeto (document). Ese objeto document es un objeto que ya te da creado Javascript y corresponde con el documento o página que se está visualizando. El objeto document forma parte de las cosas que están disponibles al programar Javascript en el contexto de un navegador y es un elemento del DOM (document objetc model) que veremos a continuación y que te cansarás de ver si te introduces con detalle en las lecciones de Javascript que encontrarás en DesarrolloWeb.com.
Fuente:enlace
Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros
Cursos y Diplomados de Tecnología Web visita www.uneweb.edu.ve para más información
No hay comentarios:
Publicar un comentario