區分JSON 字串和AJAX 回應中的錯誤訊息
使用AJAX 呼叫時,通常會從伺服器接收數據,這些數據可能是包含相關資訊的JSON 字串或由PHP 的mysql_error() 函數產生的錯誤訊息字串。為了有效地處理這些回應,必須有一種方法來識別接收到的資料是否是 JSON 字串。
解決此問題的一種方法是定義一個名為 isJSON 的函數,該函數模仿所使用的 instanceof 運算子的語法用於數組類型檢查。 isJSON 函數使用 JSON.parse 來完成此操作:
function isJson(str) { try { JSON.parse(str); } catch (e) { return false; } return true; }
此函數嘗試將輸入字串解析為 JSON 物件。如果解析成功,函數傳回true,表示該字串是有效的JSON字串。如果由於語法錯誤導致解析失敗,則函數會捕獲異常並傳回 false,表示該字串不是 JSON。
利用此函數,我們可以編寫程式碼來處理不同的場景:
if (isJSON(data)) { // Process the JSON data } else { // Display the error message alert(data); }
以上是如何區分 AJAX 回應中的 JSON 資料和錯誤訊息?的詳細內容。更多資訊請關注PHP中文網其他相關文章!