Como verificar corretamente se um valor de variável é undefined em JavaScript?
Olá a todos! Comecei a estudar JavaScript recentemente e me deparei com um problema. Preciso verificar se uma variável está definida ou não. Tentei usar uma construção simples `if (variable == undefined)`, mas nem sempre funciona.
Aqui está um exemplo do meu código:
```javascript
let user;
if (user == undefined) {
console.log("Usuário não definido");
}
```
Esse código parece funcionar, mas ouvi dizer que fazer assim é incorreto. Depois tentei assim:
```javascript
let user;
if (user === undefined) {
console.log("Usuário não definido");
}
```
Também funciona, mas notei que se a variável não for declarada, recebo um erro: `ReferenceError: user is not defined`. E como verificar se não tenho certeza se a variável foi declarada?
Também vi que alguns usam `typeof`. Por exemplo:
```javascript
if (typeof user === 'undefined') {
console.log("Usuário não definido");
}
```
Qual dessas formas é a correta? Quando usar cada uma? E por quê?