Kann jemand die Unterschiede zwischen angular.copy () und JSON.parse (JSON.stringify ()) erklären? Sind da irgendwelche? Was empfehlen Sie zu verwenden? Ist angular.fromJson (angular.toJson ()) dasselbe wie JSON.parse (JSON.stringify ())?
Nur um zu erwähnen, ich habe gelesen Wie kann ich ein JavaScript-Objekt korrekt klonen? ? für JSON.parse (JSON.stringify ()) und angular.copy () reference für angular.copy ().
Was JSON.parse(JSON.stringify())
nicht kopiert:
Date
(es wird kopiert, aber nicht als Date
) undefined
angular.fromJson(angular.toJson())
ist im Grunde das Gleiche, außer dass angular.toJson()
Eigenschaften auslässt, die von Angular intern verwendet werden (die mit $$
beginnen).
Ich kann Ihre Frage ganz konkret beantworten, indem Sie darauf hinweisen, dass undefined
anders behandelt wird:
Und im Allgemeinen würde ich angular.copy bevorzugen:
Das heißt, behandeln sie auch mehr esoterische Daten, wie zum Beispiel Funktionen? Ich kann das nicht von zu Hause aus beantworten, aber ich würde nachforschen (oder auf eine andere Antwort warten), bevor ich mich entscheide.
Tags und Links javascript angularjs json object clone