Comment vérifier correctement si une chaîne est vide, null ou undefined en JavaScript ?
Bonjour à tous ! Je suis débutant en JavaScript et j'écris un simple formulaire d'inscription. Je dois vérifier si l'utilisateur a saisi son nom, son email et son mot de passe. Mais je me trompe constamment dans les vérifications et j'obtiens des résultats inattendus.
Voici mon code actuel :
```javascript
let userName = document.getElementById('name').value;
if (userName == '') {
console.log('Nom non rempli');
} else {
console.log('Bonjour, ' + userName);
}
```
Le problème est que si l'utilisateur n'a rien saisi, `userName` est une chaîne vide `""`. Mais parfois je reçois `null` ou `undefined` (par exemple, si l'élément n'est pas sur la page, ou si je travaille avec une API). J'ai essayé d'écrire comme ceci :
```javascript
if (userName == null || userName == undefined || userName == '') {
// ...
}
```
Mais cela semble lourd et pas joli. De plus, j'ai entendu dire qu'il y a une différence entre `==` et `===`, et que `null` et `undefined` se comportent différemment. Il y a aussi la chaîne vide, la chaîne avec des espaces (`" "`) — est-ce considéré comme vide ou non ?
Dites-moi, s'il vous plaît