Javascript 为什么JSON.stringify会添加额外的&引用;
我的应用程序从服务器接收以下消息Javascript 为什么JSON.stringify会添加额外的&引用;,javascript,json,Javascript,Json,我的应用程序从服务器接收以下消息 从可观察对象中获取错误:{result:“error”,附加信息:,http状态:“401”,http状态文本:“Unauthorized”} 我把它解析成一个变量 error:ServerResponseAPI 如果我执行JSON.stringify(错误['additional-info']),我注意到结果是”,而不是” 为什么?“是一个空字符串,它是有效的JSON(任何单个字符串都是有效的JSON)。如果对空字符串使用JSON.stringify,它会将
从可观察对象中获取错误:{result:“error”,附加信息:,http状态:“401”,http状态文本:“Unauthorized”}
我把它解析成一个变量
error:ServerResponseAPI
如果我执行JSON.stringify(错误['additional-info'])
,我注意到结果是”
,而不是”
为什么?“
是一个空字符串,它是有效的JSON(任何单个字符串都是有效的JSON)。如果对空字符串使用JSON.stringify
,它会将提供的值字符串化/序列化为JSON。在本例中,这是一个空字符串,因此它将为您提供一个引号字符串。这就是为什么您在记录值时可能会看到“”“
”或“”
。它是一个包含空字符串(两个引号)的JSON表示的字符串
JSON.stringify('a')
将为您提供'“a”
,例如。外部引号表示此内容在字符串中
您的json内容是一个在真实字符串中表示的空字符串,它可以用转义符表示:“\”
如果error['additional-info']
为空,JSON.stringify(error['additional-info'])
将返回“null”
。本例中的内容是null
值,不带引号
JSON.stringify
永远不会返回空字符串