2012-06-08 16 views
27

Ho una stringa ad esempio: "4.874915326E7". Qual è il modo migliore per convertirlo in un formato numerico javascript? (int o float)? se provo parseInt(), la E alla fine viene ignorata.Come convertire una stringa contenente notazione scientifica per correggere il formato numero Javascript

+0

che di solito è fatto riferimento ad una [Notazione scientifica] (http://en.wikipedia.org/wiki/Scientific_notation) (a volte come Scientific E notazione, ma qualunque cosa ...) –

+0

cambiato titolo della domanda, grazie – Olga

risposta

42

Passa come una stringa alla funzione Numero.

Number("4.874915326E7") //returns 48749153.26 
+0

perfetto, grazie! – Olga

+0

@Olga felice di aiutare :) –

+4

Il mio non funziona. 'Number (" 1.7976931348623157e308 ")' –

8

provare qualcosa di simile

Demo

Number("4.874915326E7").toPrecision() 
+3

'.toPrecision()' non è necessario qui e aggiunge notazione scientifica se la precisione è inferiore alla stringa fornita. –

+0

Non funziona per E49 per Intance. – momomo

4

È inoltre possibile utilizzare + segno di fronte stringa per ottenere un numero.

+"4.874915326E7" // == 48749153.26 
+2

Funziona anche per variabili, anche nelle stringhe: 'x =" 1e3 "; ":" + (+ x) 'restituisce": 1000 ". –

Problemi correlati