100e00
là ký hiệu khoa học, tức là: 100 * 10^0, hoặc: 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>
này kết quả đầu ra:
values:
string: 100e00
numeric: 100
isNumeric()
string: YES
numeric: YES
lsIsNumeric()
string: NO
numeric: YES
Chức năng của isNumeric()
và lsIsNumeric()
khác nhau đôi chút ngoài locale- nhận thức về sau này.
IsNumeric() tiểu bang này: "Xác định xem một chuỗi có thể được chuyển đổi sang một giá trị số" (nhấn mạnh của tôi)
lsIsNumeric() khẳng định: "Xác định xem một chuỗi là một đại diện hợp lệ của một số "
Bạn có thấy sự khác biệt tinh tế không? trước đây sẽ cố gắng buộc giá trị là một số, trong khi sau đó chỉ làm những gì nó nói: cho bạn biết nếu nó là một số hay không.
Nguồn
2013-02-08 13:12:54
Đây có thể là một ký hiệu khoa học. Đúc nó vào một số nguyên, hoặc chạy một định dạng số trên nó và xem những gì bạn nhận được. –