No ActionScript (NaN == parseFloat (input.text)) adverte que sempre será falso. Por quê?

StackOverflow https://stackoverflow.com/questions/150548

  •  02-07-2019
  •  | 
  •  

Pergunta

Apesar do sim limpar documentação que diz que parseFloat () pode retornar NaN como um valor, quando eu escrever um bloco como:

if ( NaN == parseFloat(input.text) ) {
  errorMessage.text = "Please enter a number."
}

Estou advertiu que a comparação será sempre falsa. E teste mostra a advertência a ser corretas.

Onde está a documentação corrigida, e como eu posso escrever este trabalho com AS3?

Foi útil?

Solução

Como comparar qualquer coisa para NaN é sempre falsa. Use isNaN () em vez.

Outras dicas

isNaN (parseFloat (input.text))

BTW, se por algum motivo você não tem acesso a isNaN (), o método tradicional é comparar o número para si:

if( number != number )
{
    //Is NaN 
}

A documentação pode ser encontrada no Adobe Flex Language Reference Aqui , bem como outras funções globalmente disponíveis.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top