Diferencia entre revisiones de «Programación en JavaScript/OOP»

Contenido eliminado Contenido añadido
Sin resumen de edición
Suzuma (discusión | contribs.)
Sin resumen de edición
Línea 104:
 
<code>with</code> es una palabra reservada de JavaScript que permite coger una variable de objeto como this y permite utilizar sus miembros como si fueran variables independientes. Pero tiene sus restricciones: estos nombres abreviados sólo se pueden utilizar dentro del ambito de with (que si tiene varias lineas, estas deben estar contenidas entre llaves, como for, if, etc...), y además, se pueden confundir facilmente con variables locales a la función o globales del programa, con lo cual particularmente no recomendamos el uso de with, ya que puede dar lugar a fallos de ejecución dificiles de tratar si no se tienen en cuenta estas restricciones. Se aconseja usar la forma this.nombre. También se recomienda crear cada clase en un archivo diferente para que no haya confusiones de nombres, sobre todo de funciones miembro.
 
Otra manera de declarar la clase en javascript
<html>
<head>
<script language="javascript">
function Persona(nombre) {
this.nombre = nombre;
this.color_pelo = 'negro';
this.peso = 75;
this.altura = 165;
this.sexo = 'varón';
this.dormir = function dormir(){
alert(this.nombre + ' está durmiendo');
}
 
}
</script>
</head>
<body>
<form>
</form>
<script>
var hombre = new Persona('Pepe');
hombre.dormir();
</script>
</body>
</html>
Con este ejemplo se obtiene el mismo resultado que el anterior pero el codigo queda un poco mas complejo. Apesar de esto ya podemos ver que a diferencia del codigo anterior este se encuentra encapsulado en la misma funcion [ ''function Persona(){}'' ]
 
Otro ejemplo de creacion de una clase mas complicado utilizando DOM y Javascript
<html>
<head>
<script language="javascript">
function CrearCapas(idcapa,info){
this.id=idcapa;
this.texto=info;
this.CrearCapa= function CrearCapa(){
try{
capa=document.createElement('div');
capa.setAttribute('id',this.id);
document.body.appendChild(capa);
capa = document.getElementById(this.id);
capa.style.backgroundColor='#f7f7f7';
capa.style.width='100px';
capa.style.border='#000000 2px solid';
capa.innerHTML=this.texto;
//
}catch(e){
alert(e.name + " - " + e.message);
}
}
}
</script>
</head>
<body>
<script>
var capa=new CrearCapas('idCapanueva','Hola Mundo');
capa.CrearCapa();
</script>
</body>
</html>
 
El resultado del codigo anterior es una pagina que por medio de Javascript crea un DIV y le asigna propiedades como ancho,alto,color etc. y lo inserta dentro de la pagina al cargarse.
 
 
 
<noinclude>{{Navegador|libro=Programación en JavaScript