尝试传递以下字符串时出现语法错误:
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循环,而是将数据作为字符串并循环每个单个文本。
JSON.stringify
JSON.parse
转义我当前正在执行的每一个双引号,但它不能如上图所示。但是,如果我将所有双引号都替换为文字,恐怕某些想成为双引号的消息也将转换为文字,这将导致看起来很奇怪的消息。
请告知我还有什么其他替代方法可以解决此问题。
您在JavaScript字符串文字中嵌入了JSON。
"并且\是JSON中的特殊字符,也是JavaScript字符串文字中的特殊字符。
"
\
href=\"https:转义"JavaScript字符串文字中的。然后,它"在JSON中成为。这会导致错误。
href=\"https:
当您想要"JSON中的as数据时,您必须:
href=\\\"https: