Cómo implementar un destructor básico en JavaScript

by admin

Cómo implementar un destructor básico en JavaScript

JavaScript no tiene un mecanismo destructor real como C ++ u otros lenguajes. Dicho esto, cuando se va a crear objetos en JavaScript, todavía se puede implementar algunas funcionalidades básicas destructor-esque. Esta funcionalidad se puede activar manualmente en su código, o se puede añadir a evento "onunload" de una página para activar automáticamente cuando el usuario se desplaza fuera de la página. Esto se puede implementar el uso de "recta" JavaScript, sin ninguna biblioteca externa, pero usando el kit de herramientas Dojo puede hacer que el código un poco más limpio y más fácil de trabajar.

Instrucciones

Configuración inicial

1 Instalar la instalación kit de herramientas Dojo con respecto a su proyecto web (ver Recursos para detalles de instalación / configuración). Para mantener las cosas organizadas, colocarlo en una subcarpeta de su proyecto llamado "scripts / Dojo Toolkit." Usted debe terminar con una estructura de ruta similar a la siguiente:

/

guiones/

Dojo Toolkit /

dijit /

dojo /

dojox /

2 En la carpeta "guiones", cree una nueva carpeta llamada "lib". Debajo de eso, crear otra carpeta llamada "destino". Aquí es donde vamos a almacenar la clase JavaScript crearemos a nuestro destructor.

3 Crear un nuevo archivo HTML en la raíz del proyecto, y el nombre "index.html". (El nombre puede ser lo que quiera, pero así es como nos referiremos a ella aquí.) Esto se usará principalmente para propósitos de prueba por ahora.

4 En el archivo index.html, registrar la biblioteca de Dojo y configurar su Dojo "ruta del módulo" de esta manera:

<Html>

&lt;head>

& Lt; script type = "text / javascript" charset = "UTF-8"> & lt; / script>

& Lt; script de type = "text / javascript">

dojo.registerModulePath ( "lib", "../../lib/");

& Lt; / script>

& Lt; / head>

& Lt; body>

& Lt; / body>

</ Html>

Esto nos permitirá utilizar las clases que colocamos en la carpeta "lib" que hemos creado antes.

Creación de la clase de JavaScript

5 Dentro de la carpeta "scripts" / "lib" / "destino", cree un nuevo archivo JavaScript y el nombre de "DestructorTest.js." Este contendrá la clase de JavaScript real y la funcionalidad que vamos a trabajar con el.

6 Agregue el código siguiente a su nuevo archivo JavaScript:

dojo.provides ( "dest.DestructorTest");

dojo.declare ( "dest.DestructorTest", null, {

name: null,

Dirección: null,

constructor: function () {

this.name = "Bob Jones";

this.address = "123 Prueba doctor";

alert ( 'La construcción de un DestructorTest!');

},

destruir: function () {

this.name = null;

Eliminar this.name;

this.address = null;

Eliminar this.address;

alert ( 'La destrucción de un DestructorTest!');

}

});

7 De vuelta en su archivo index.html, agregue el siguiente código para el bloque de script que añadimos anteriormente para dar el acceso a su página nueva clase de JavaScript:

<Script type = "text / javascript">

dojo.registerModulePath("lib", "../../lib/");

// Añadir la siguiente línea:

dojo.require ( "dest.DestructorTest");

</ Script>

Esto es similar a una "importación" declaración en Java, el "uso" en C #, o (en menor medida) la directiva #include en C / C ++.

8 En la parte inferior del archivo index.html, antes de la etiqueta de cierre "cuerpo", añadir un nuevo bloque de script con el siguiente código:

<Script type = "text / javascript">

var destObj;

funcionar initDestObj () {

destObj = new dest.DestructorTest ();

dojo.addOnUnload (destroyDestObj);

}

funcionar destroyDestObj () {

si (destObj! = null) {

destObj.destroy ();

}

destObj = null;

Eliminar destObj;

}

dojo.addOnLoad (initDestObj);

</ Script>

Guarde el archivo y abrirlo en el navegador; debería ver un cuadro de mensaje aparece que indica que se crea un nuevo DestructorTest. Si actualiza la página, o navegar a una página diferente, obtendrá otro cuadro de mensaje que le informa de que el objeto se destruye DestructorTest.

ETIQUETA: