Avatar ·

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ê?