2010-08-09 1 views
6

Sono sicuro che questo è un problema semplice, ma sto confrontando i numeri negativi in ​​javascript cioè:Confrontando i numeri negativi in ​​javascript

var num1 = -83.778; 
var num2 = -83.356; 

if(num1 < num2) 
{ 
    // Take action 1 
} 
else 
{ 
    // Take action 2 
} 

Questo script sarà sempre agire 2, anche se è inferiore a num1num2. Cosa sta succedendo qui?

+1

Questo funziona per me. '>>> -83.778 < -83.356 -> true'. Piattaforma/Versione JS/Versione browser? –

+1

Ciao, mi sono messo alla prova, e prende l'azione 1. Non c'è nulla di sbagliato nel confronto qui. Forse il tuo codice è sbagliato da qualche altra parte –

+0

Sei sicuro che sia tutto lì? [Funziona per me.] (Http://jsfiddle.net/BVN6T/) – quantumSoup

risposta

12

Come funziona if (parseFloat(num1) < parseFloat(num2))? Forse i numeri stanno diventando stringhe da qualche parte.

+0

esattamente. Stavo ottenendo i numeri da una risposta JSON e non li ho rimandati indietro nei float. Haha dispiace a tutti .... –