Javascript se typeof = 'indefinido' em try espaço / catch
-
21-08-2019 - |
Pergunta
Eu tenho o código que é envolto em bloco try / catch. Eu uso typeof para descobrir se uma variável é definida:
if (typeof (var) == 'string') {
//the string is defined
}
No entanto, usando isso em um bloco try / catch, salta para a parte captura em vez de fazer o que é suppoed para fazer (fazer algo com a corda se a sua definido).
Como posso verificar se uma variável é definida sem ativar uma exceção?
Solução
'var' não é um nome de variável válido. - É uma palavra-chave
Além disso, o que você tem deve ser correta.
Outras dicas
Gostaria de usar uma comparação direta, sem 'typeof':
var vvv= 2;
alert( vvv !== undefined );
Tenha cuidado, porém, para saber se você quiser verificar para truliness (não falsa, null, indefinido, "" ou 0), contra null, indefinida, falsa ou uma combinação destes.
Se você simplesmente quer ver que o valor tem um valor, o código I colocado acima deve fazer.
Como sugestão, eu encontrei este livro tremenda : JavaScript - as partes boas