Juz*_*Ali 6 javascript json newline
为什么你不能用\njavascript中的字符解析json
JSON.parse('{"x": "\n"}')
但是当你这样做时JSON.parse(JSON.stringify({"x" : "\n"})),它是有效的.
http://www.jslint.com/说这{"x": "\n"}是一个有效的JSON.我想知道规范对此有何看法?
更新: 对于标记此重复的人,这与"如何处理JSON中的换行符"不同.这个问题更多的是为什么不能在JSON中允许未转义的换行符.
JSON.parse('{"x": "\n"}')失败,因为由于'{"x": "\n"}'未转义的斜杠符号而不是有效的JSON字符串.
JSON.parse() 需要有效的JSON字符串才能工作.
'{"x": "\\n"}'是一个有效的JSON字符串,因为斜杠现在已转义,因此JSON.parse('{"x": "\\n"}')可以正常工作.
JSON.parse(JSON.stringify({"x" : "\n"})) 因为JSON.stringify在内部转义斜杠字符而起作用.
结果JSON.stringify({"x" : "\n"})是{"x":"\n"}但是如果你尝试使用JSON.parse('{"x":"\n"})'它解析它将失败,因为它没有被转义.由于JSON.stringify返回一个转义字符,因此JSON.parse(JSON.stringify())可以正常工作.
| 归档时间: |
|
| 查看次数: |
11806 次 |
| 最近记录: |