Asp-Classic
IsNumeric 函式無法正常工作
經典asp失敗中的IsNumeric函式有一個非常奇怪的問題。我的程式碼中發生了這樣的事情:
Response.write Score // 79.617 Response.write IsNumeric(Score) // false Response.write IsNumeric("79.617") // true有沒有人知道為什麼會發生這種情況?
在規範中,據說這些函式適用於可以轉換為數字的字元串,從上面的範例中您可以看到我得到“真實”的結果。但是什麼會導致我的問題?
這意味著
Score根本不是字元串,而是其他東西,很可能來自數據庫。為了安全起見,請使用您自己的函式:
Function My_IsNumeric(value) My_IsNumeric = False If IsNull(value) Then Exit Function My_IsNumeric = IsNumeric(CStr(value)) End Function Response.write My_IsNumeric(Score)將
CStr()確保將除 Null 之外的任何內容轉換為字元串,並處理來自數據庫的 Null,您擁有該IsNull()功能。