100e00
è notazione scientifica, cioè: 100 * 10^0, oppure: 100.
<cfset string = "100e00">
<cfset numeric = val(string)>
<cfoutput>
values:<br />
string: #string#<br />
numeric: #numeric#<br />
<hr />
isNumeric()<br />
string: #isNumeric(string)#<br />
numeric: #isNumeric(numeric)#<br />
<hr />
lsIsNumeric()<br />
string: #lsIsNumeric(string)#<br />
numeric: #lsIsNumeric(numeric)#<br />
</cfoutput>
This uscite:
values:
string: 100e00
numeric: 100
isNumeric()
string: YES
numeric: YES
lsIsNumeric()
string: NO
numeric: YES
La funzionalità di isNumeric()
e lsIsNumeric()
differiscono leggermente oltre il locale- consapevolezza di quest'ultimo.
isNumeric() afferma questo: "Determina se una stringa può essere convertito in un valore numerico" (il mio enfasi)
lsIsNumeric() afferma: "determina se una stringa è un rappresentazione valida di un numero "
Vedete la sottile differenza? il primo cercherà di forzare il valore ad essere un valore numerico, mentre il secondo fa semplicemente ciò che viene detto: ti dice se è un valore numerico o meno.
fonte
2013-02-08 13:12:54
È probabilmente una notazione scientifica. Trasmettilo su un numero intero o esegui un formato numerico e guarda cosa ottieni. –