Objeto de destrucción de JavaScript
-
Use el operador
eliminar
para destruir objetos en JavaScript -
Use el método
destroy
y pase instancias de objetos en JavaScript -
Establezca la referencia de variable de objeto en
null
con JavaScript
El método de destrucción
de JavaScript no tiene acceso a las instancias del objeto. En nuestros ejemplos, veremos dos formas de resolver el caso.
En una instancia, introduciremos el operador borrar
, y en la siguiente, intentaremos pasar el objeto y su instancia. Por lo tanto, examinaremos cómo nuestro objeto y su instancia se configuran como indefinidos
.
Use el operador eliminar
para destruir objetos en JavaScript
Un objeto consta de múltiples propiedades como el par clave-valor. Como JavaScript no se introduce en ninguna funcionalidad que haga desaparecer directamente un objeto, tendremos que eliminar las propiedades y los valores correspondientes de la referencia.
Entonces, en este caso, elimine la propiedad nombre
. Veamos el impacto de usar el operador eliminar
.
Fragmento de código:
const Employee = {
name: 'xyz',
id: 1
};
console.log(Employee.name);
delete Employee.name;
console.log(Employee.name);
Producción:
Se puede visualizar que el posterior Employee.name
se valora como indefinido
. El objeto todavía consta de la propiedad id
.
Si eliminamos esa propiedad, entonces el objeto está lógicamente vacío. Pero el objeto no será arrancado de la memoria.
Aún así, el objeto no tiene ninguna propiedad del pasado.
Use el método destroy
y pase instancias de objetos en JavaScript
Iniciaremos un constructor de clases que defina el método destroy
. Aquí, la función destruir
toma el objeto a operar y sus instancias específicas.
Más tarde, instanciaremos una instancia para la propiedad del objeto, y esta nueva instancia se operará para que sea nula o desaparezca.
Fragmento de código:
// Class constructor
var Class = function() {
this.destroy = function(baseObject, refName) {
delete baseObject[refName];
};
};
// instanciate
var store = {'name': 'abc', 'id': 2};
console.log(store.id);
store.id = new Class();
console.log(store.id);
store.id.destroy(store, 'id');
console.log(store.id);
Producción:
A pesar de que store.id
todavía tiene un inicio de nueva clase ()
, la operación de eliminación no comenzó antes de que se pasaran los parámetros (objeto, instancia) en el método destruir
. Esta es la forma en que un objeto puede tender a ser nulo.
Establezca la referencia de variable de objeto en null
con JavaScript
Si una variable apunta a un objeto y lo establece en nulo
, no tendrá acceso al objeto. Por lo tanto, el recolector de elementos no utilizados de JavaScript eliminará el objeto.
La variable userName
apunta a un objeto en el siguiente ejemplo de código. Ahora podemos acceder al objeto a través de la variable userName
.
Sin embargo, si establecemos la variable userName
en null
, ya no tendrá acceso al objeto. Dando como resultado la eliminación del objeto y la liberación de la memoria.
Código:
let userName = {id: 1, position: 2} console.log('Before deletion: ', userName);
// Set the object reference to null
userName = null;
// Check if we can reach the object
console.log('After deletion: ', userName);
Producción :
Before deletion: Object { id: 1, position: 2 }
After deletion: null