No trabalho, muitas vezes precisamos determinar se uma variável/propriedade é indefinida. Geralmente existem duas maneiras de escrever
Copie o código do código da seguinte forma:
// Método 1
tipo de idade === 'indefinido';
// Método 2
idade === indefinida
Existe alguma diferença entre essas duas formas de escrever? Qual delas deve ser usada? Dê uma olhada no exemplo a seguir
Copie o código do código da seguinte forma:
typeof idade === 'indefinido'; // verdadeiro
A idade do identificador não foi declarada e a saída é verdadeira.
Vejamos outro exemplo
Copie o código do código da seguinte forma:
idade === indefinido; // Relatório de erros
Firebug avisa que a idade não está definida,
Essa é a diferença entre os dois, ou seja, se você não tem certeza se a idade está declarada ou definida, use o método 1, e se tiver certeza, pode usar o método 2. Se a variável não for declarada usando o método 1, o código não reportará um erro, mas o método 2 reportará um erro. Parece que o método 1 é mais tolerante a falhas, mas na verdade é um bug oculto. É sempre uma boa prática declarar variáveis antes de usá-las.
Além disso, o método 1 consiste em duas operações e o método 2 é uma operação.