为什么字符串化JSON是一个有效的字符串?

时间:2014-09-23 04:23:27

标签: javascript json

我们已经知道我们不能在双引号中添加双引号:

var str = ""hello""; //这将是无效的字符串

但是当我对这样的对象进行字符串化时

var obj = {"name":"abc"}
var str = JSON.stringify(obj).
str // returns "{"name":"abc"}"

有效但不应该有效。我很困惑,因为当我们对JSON对象进行字符串化并省略字符串验证时,JavaScript会有一些特殊情况吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

您可以根据需要在字符串文字中包含尽可能多的双引号。你只需要使用反斜杠前缀(\“而不是”)来改变它们。 在浏览器控制台中尝试此示例:

var myStr = "\"Hello\"";
myStr

您应该在控制台中看到""Hello""。这就是stringify如何创建一个带双引号的字符串。