Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 浏览器JSON与节点JSON_Javascript_Json_Node.js - Fatal编程技术网

Javascript 浏览器JSON与节点JSON

Javascript 浏览器JSON与节点JSON,javascript,json,node.js,Javascript,Json,Node.js,我正在尝试将包含转义字符串的字符串序列化为JSON。我本以为JSON.stringify()会正确地重新转义那些字符串,并允许我JSON.parse它。例如,在一个简单的情况下: JSON.parse(JSON.stringify("\\")) 节点的输出为“\”。浏览器的输出是“\”——看起来浏览器(我的例子是chrome)没有正确地将双反斜杠\\转换为\\\ 这是为什么?当你写代码时,你必须写“\\”(因为反斜杠self被用作转义),它是一个字符串,只包含一个反斜杠(“\\”。长度是1)

我正在尝试将包含转义字符串的字符串序列化为JSON。我本以为
JSON.stringify()
会正确地重新转义那些字符串,并允许我
JSON.parse
它。例如,在一个简单的情况下:

JSON.parse(JSON.stringify("\\"))
节点的输出为“\”。浏览器的输出是“\”——看起来浏览器(我的例子是chrome)没有正确地将双反斜杠
\\
转换为
\\\


这是为什么?

当你写代码时,你必须写
“\\”
(因为反斜杠self被用作转义),它是一个字符串,只包含一个反斜杠(
“\\”。长度
1


但是,当显示在控制台或浏览器中时,它将显示为
“\”

是的,似乎只是控制台为了显示而吃掉了它们。后来我尝试了JSON.stringify(\\”).length=4,以确认它实际上与我期望的一致。