Wie man richtig prüft, ob eine Objekteigenschaft in JavaScript existiert (undefined)
Hallo zusammen! Ich habe angefangen, JavaScript zu lernen, und bin auf eine unklare Situation gestoßen. Ich habe ein Objekt mit Benutzerdaten und möchte prüfen, ob eine bestimmte Eigenschaft darin existiert. Aber ich verwechsle `undefined`, `null` und den Fall, dass die Eigenschaft gar nicht deklariert ist.
Hier ist ein Beispiel. Angenommen, ich habe ein Objekt:
```javascript
const user = {
name: 'Ivan',
age: 25
};
```
Ich möchte prüfen, ob der Benutzer eine Eigenschaft `email` hat. Wenn ich schreibe:
```javascript
if (user.email === undefined) {
console.log('Email nicht angegeben');
}
```
Das funktioniert zwar, aber ich habe gehört, dass man das nicht so machen sollte. Warum? Denn `user.email` gibt tatsächlich `undefined` zurück.
Aber was ist, wenn ich absichtlich eine Eigenschaft mit dem Wert `undefined` setze?
```javascript
const user2 = {
name: 'Maria',
email: undefined
};
```
Jetzt ist `user2.email` auch `undefined`. Wie kann ich unterscheiden, ob die Eigenschaft existiert, aber ihr Wert `undefined` ist, oder ob die Eigenschaft gar nicht existiert? Ich habe versucht und