Jörg Peschke: Wie löscht man ein Objekt aus sich selbst heraus?

Beitrag lesen

Hallo,

Wäre doch cool, wenn man einfach soetwas wie
Object.selfDestruct();
machen könnte.

Dann wäre das Forum voll von Einträgen von Leuten, die sich wundern, warum eine Funktion:

function test () {
   this.selfDestruct();
   return(true);
}

nichts mehr zurückliefert ;-)

Davon abgesehen:

Nach meinem Dafürhalten löscht man auch mit

delete objekt;

kein Objekt (sofern objekt wirklich ein Objekt und kein primitiver Datentyp ist), sondern immer nur die Refernz darauf.

Denn da alle Objekte in JS als Referenzen übergeben werden, wird "delete" damit auch nur eine Referenz übergeben.

Allerdings:
Wird die letzte Referenz gelöscht, springt der Garbage-Collector an und gibt auch den Speicherbereich, auf den die Referenz gezeigt hat, frei.

Jörg

Dein Vorschlag ist aber sehr gut, ich werde ein übergeordnetes Objekt diese Aufgabe übernehmen lassen. Mensch, eigentlich ganz einfach.