處理JSON 中的換行符:避免評估頭痛
在JavaScript 中處理JSON 資料時,有效處理換行符以避免解析變變得至關重要錯誤。考慮以下範例,其中嘗試使用eval 和JSON.parse 將包含換行符的JSON 資料轉換為物件失敗:
var data = '{"count" : 1, "stack" : "sometext\n\n"}'; var dataObj = eval('('+data+')'); // This approach is discouraged
問題源自於字串中存在換行符(n),其中被誤解為JSON 資料中的換行符,導致評估過程過早終止並產生「未終止的字串文字」錯誤。
要修正此問題並成功轉換將 JSON 資料轉換為物件時,透過將換行符號加倍來轉義換行符至關重要。這可確保換行符號保留為 JSON 資料的一部分,而不是解釋為換行符號。修正後的程式碼如下所示:
var data = '{"count" : 1, "stack" : "sometext\n\n"}'; var dataObj = JSON.parse(data);
轉義換行符允許 JSON 解析器正確解釋資料並建立所需的對象,而不會遇到任何解析錯誤。
以上是如何正確處理 JSON 中的換行符號以避免解析錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!