TÓPICO

Em JavaScript, atenção a NaN e -0 (Error 5%)

wagfim perguntou 2 years ago

Fica aqui a minha dica, eu passei horas e horas nesse problema sem entender porque na minha maquina todos os testes, inclusive do uDebug davam o resultado correto, mas aqui no URI sempre estava dando erro na contagem de números ímpares.

No principio eu achei que o URI estava forçando o meu código a tratar 0 (zero) como impar, mas mesmo tratando esse caso ainda estava contando errado.

Depois muitos testes eu (no VS Code e no Terminal) percebi que em Javascript, o número Zero pode ter sinal, aparecendo como 0, +0, ou -0.

console.log (-4 % 2) // -0 (zero negativo)

A pegadinha aqui é que na engine do URI o resultado é diferente

console.log (-4 % 2) // NaN

E foi por causa disso que esse meu trecho de código dava erro. O URI vê que NaN é diferente de zero e entra no IF.

Dúvida resolvida. Código removido. Estou compartilhando aqui porque o tanto o VS Code quanto o Node pelo terminal estavam gerando resultados diferentes do URI, para o mesmo código.

Este tópico foi resolvido e não pode receber novas respostas.