Dúvida de JavaScript

6 respostas
E

Estou precisando pegar um objeto String e usá-lo em uma condição que tem que ser menor que 2.4, usei então um parseFloat mas o resultado é arredondado para 2. Alguém tem uma dica para usar o valor real que preciso (2.4)?
PS: Isso tem que ser em JavaScript.

6 Respostas

D

Engraçado, experimente o código a seguir. Funciona a conversão.

alert(parseFloat("2.4") + parseFloat("3.71"));

T

Qual a diferença entre parseFloat(“2.4”) e parseFloat(“2,4”)?

No meu Windows em inglês, o primeiro retorna 2.4 como esperado, e o segundo retorna 2.
Pode ser que esteja acontecendo o contrário na sua máquina, mas como estou sem o Windows em português, não tenho como dizer o que acontece no segundo parseFloat.
Você pode até usar uma condição (do tipo "if (parseFloat(“2.4”) == 2) … )para testar isso, e trocar as vírgulas por pontos ou os pontos por vírgulas para fazer a conversão.

D

Não importa o idioma do SO, pontos flutuantes em JavaScript sempre irá utilizar o “.” como separador fracionário.

D

javascript é um melecão… odeio esse lixo

E

É um lixo mesmo! O problema eu já resolvi, era a porr* da máscara que o campo usava. Pra ser 2.4 a entrada tinha que ser 24000 porque aí ele ficava 2.40,00. Valeu galera!!

D

Eu curto bastante programar com Javacript, por mais que as vezes é meio chato compatibilizar o código para que funcione em navegadores diferentes e com versões diferentes.

Criado 9 de junho de 2005
Ultima resposta 10 de jun. de 2005
Respostas 6
Participantes 4