Sobes.tech
Middle

Welche Methoden der Objektklonung kennst du?

sobes.tech KI

Antwort von AI

Es gibt mehrere Möglichkeiten, Objekte in JavaScript zu klonen:

  1. Flache Kopie (shallow copy) — kopiert nur die oberste Ebene der Eigenschaften, verschachtelte Objekte bleiben Referenzen.

    • Verwendung von Object.assign():
      const clone = Object.assign({}, original);
      
    • Spread-Operator:
      const clone = {...original};
      
  2. Tiefe Kopie (deep copy) — erstellt eine vollständige Kopie des Objekts mit allen verschachtelten Objekten.

    • Serialisierung und Deserialisierung mit JSON (funktioniert nur mit einfachen Objekten ohne Funktionen, Daten usw.):
      const deepClone = JSON.parse(JSON.stringify(original));
      
    • Verwendung spezialisierter Bibliotheken, z.B. lodash:
      const _ = require('lodash');
      const deepClone = _.cloneDeep(original);
      
  3. Eigene Klonmethode implementieren — wenn das Objekt Methoden oder komplexe Typen enthält, kann eine clone()-Methode innerhalb der Klasse implementiert werden.

Die Wahl der Methode hängt von der Struktur des Objekts und den Anforderungen an die Kopie ab. Für einfache Objekte reicht eine flache Kopie, für komplexe Objekte eine tiefe Kopie.