Vergleich von Objekten in JavaScript: warum {} !== {} und wie vergleicht man richtig?
Hallo zusammen! Ich habe gerade angefangen, JavaScript zu lernen und bin auf eine unverständliche Situation gestoßen. Ich versuche, zwei Objekte zu vergleichen, die völlig gleich aussehen, bekomme aber false.\n\nHier ist mein Code:\n\n```javascript\nconst user1 = { name: 'Anna', age: 25 };\nconst user2 = { name: 'Anna', age: 25 };\n\nconsole.log(user1 === user2); // false\nconsole.log(user1 == user2); // auch false\n```\n\nIch hatte erwartet, dass es true sein würde, denn die Eigenschaften und ihre Werte stimmen überein! Aber JavaScript sagt, dass sie unterschiedlich sind. Warum passiert das?\n\nIch verstehe, dass es für Zahlen und Strings normal funktioniert:\n\n```javascript\nconsole.log(5 === 5); // true\nconsole.log('hallo' === 'hallo'); // true\n```\n\nAber bei Objekten nicht. Ich habe versucht, über JSON.stringify zu vergleichen:\n\n```javascript\nconsole.log(JSON.stringify(user1) === JSON.s
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen