调用JSON.stringify
的输出如下所示:
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<html>\n <head>\n <meta charset=\"utf-8\"/>\n </head>\n <body>\n <ul id=\"BcVWDENh\">\n <li id=\"3C\">\n <p>Hello World</p>\n </li>\n </ul>\n </body>\n</html>\n"
然后,我尝试调用JSON解析来获取一个JS字符串:
JSON.parse(
"\"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<html>\n <head>\n <meta charset=\"utf-8\"/>\n </head>\n <body>\n <ul id=\"BcVWDENh\">\n <li id=\"3C\">\n <p>Hello World</p>\n </li>\n </ul>\n </body>\n</html>\n\""
)
(我不得不在内容周围加上双引号,并将两者都转义)
我得到:
错误:语法错误:JSON解析错误:无法解析JSON字符串(-2700)
这是怎么回事?
2条答案
按热度按时间fkaflof61#
检查输出-
1wnzp6jl2#
你所谓的"
JSON.stringify
调用的输出"实际上是输出的 * 打印输出 *,当你想把这个字符串输入JSON.parse
时,你必须把所有的反斜杠都加双: