Comment vérifier correctement si une propriété d'objet existe en JavaScript (undefined)
Bonjour à tous ! J'ai commencé à apprendre JavaScript et j'ai rencontré une situation confuse. J'ai un objet avec des données utilisateur, et je veux vérifier si une certaine propriété existe dans cet objet. Mais je me mélange entre `undefined`, `null` et le fait que la propriété n'est tout simplement pas déclarée.
Voici un exemple. Supposons que j'ai un objet :
```javascript
const user = {
name: 'Иван',
age: 25
};
```
Je veux vérifier si l'utilisateur a une propriété `email`. Si j'écris :
```javascript
if (user.email === undefined) {
console.log('Email non spécifié');
}
```
Cela semble fonctionner, mais j'ai entendu dire que ce n'est pas correct. Pourquoi ? En effet, `user.email` retourne bien `undefined`.
Mais que faire si je définis délibérément une propriété avec la valeur `undefined` ?
```javascript
const user2 = {
name: 'Мария',
email: undefined
};
```
Maintenant, `user2.email` est aussi `undefined`. Comment puis-je distinguer le cas où la propriété existe mais sa valeur est `undefined`, du cas où la propriété n'existe pas du tout ? J'ai essayé et