[英]JSON.parse get “Uncaught SyntaxError: Unexpected token h”
我嘗試傳遞以下字符串時出現語法錯誤:
JSON.parse("[{\"Date\": \"4/4/2016 4:15:19 PM\", \"Message\":\"<h3>New
Message</h3> Generated at 4/4/2016 4:15:19 PM.<br/><br/>Heavy Responsive
URL: <a href=\"https://performingarts.withgoogle.com/en_us\" ></a><br/><br/>
<img src=\"https://s-media-cache-ak0.pinimg.com/236x/06/bd/ac/06bdacc904c12abdce3381ba1404fd7e.jpg\" /> \"} ]");
我知道當我使用雙引號時,錯誤來自鏈接。
如果我使用單引號然后沒有問題,但數據是從服務器端獲得的,我無法控制將要傳遞的內容,因此我只能控制在我身邊。
從我到目前為止從互聯網上讀到的內容,我嘗試了以下內容:
首先使用JSON.stringify
,然后只使用JSON.parse
。 我可以解決沒有問題,但當我嘗試循環數據時出現問題。 循環將數據作為字符串並循環每個單獨的文本,而不是將其循環為JSON。
逃避我目前正在做的每一個雙重報價,但它沒有如上所示工作。 但是,如果我將每個雙引號替換為字面值,我擔心一些假設為雙引號的消息也將轉換為字面值,這將導致奇怪的消息。
請建議我有什么其他選擇來解決這個問題。
您在JavaScript字符串文字中嵌入了JSON。
"
和\\
是JSON中的特殊字符,也是JavaScript字符串文字中的特殊字符。
href=\\"https:
在JavaScript字符串文字中轉義"
。 然后它變成了"
在JSON中。這會導致錯誤。
當您想要"
作為JSON中的數據時,您必須:
"
為JavaScript(你已經在做) \\
逃避"
for JSON "
。 \\
為JavaScript href=\\\\\\"https:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.