JavaScript Instance vs Object?
Es gibt haufenweise Erklärungen dafür, zum Beispiel diese:
Eine Klasse ist ein Blueprint mit der Sie Objekte erstellen können. Ein Objekt ist eine Instanz einer Klasse - es ist ein konkretes "Ding", das Sie mithilfe einer bestimmten Klasse erstellt haben. Objekt" und "Instanz" sind also dasselbe, aber das Wort "Instanz" weist auf die Beziehung eines Objekts zu seiner Klasse hin.
Ich habe bei solchen Antworten das Gefühl, dass die Leute es selber nicht verstehen, wenn sie es mit Wörtern wie "Ding" beschreiben.
Wo liegt jetzt der Unterschied?
Wenn ich das richtig verstanden habe, ist eine Instanz ein Objekt, dass durch eine Klasse erstellt wurde. Ein normales Objekt hingegen ist fest definiert, wurde nicht durch eine Klasse erstellt, zum beispiel const test = {value: 1}
2 Antworten
Es gibt eigentlich keinen Unterschied. Ich habe noch nie im Leben jemanden gesehen, der darunter zwei verschiedene Dinge versteht.
Man kann also beides sagen: Eine Instanz einer Klasse. Ein Objekt einer Klasse. Bei mir hat es sich so eingebürgert, dass ich es Instanz nenne, wenn es von einer Klasse abgeleitet wurde und ich es Objekt nenne, wenn ich es einfach so erstellt habe. Technisch gibt es aber überhaupt keinen Unterschied.
Das ist schon sehr simpel heruntergebrochen in der Erklärung.
Klassen und Objekte sind beide fest definiert.
Klassen Definieren die möglichen Eigenschaften und Objekte die konkreten Eigenschaften von dem, was du in einer Programmiersprache abbilden willst.