为什么我在JSON工作中试图逃避引号?

时间:2014-04-10 10:13:38

标签: javascript json escaping

我正在使用JQuery.parseJSON函数解析JSON字符串,因为我在代码中已经做了很多次。但是,在这种特殊情况下,我得到:Uncaught SyntaxError: Unexpected token R。在我的JSON格式的字符串中,唯一存在的大写字母R紧跟在转义引号后,... \"R ...就像这样。除此之外的其他任何事情似乎都太巧合了,但据我所知,我完全遵循了json.org上描述的正确语法。

修改

我试图在硬编码测试中手动删除\"的出现,并且字符串完全格式化为正确的Javascript对象。换句话说,我的\"肯定是这里的问题......

var myObject = $.parseJSON(myString);

编辑2:

此处显示我的String的有问题区域,包括工作状态和非工作状态。首先是有问题的:

{"lineID":33,"boxID":10,"title":"My text with the \"Ruining Part\""}

然后是工作人员:

{"lineID":33,"boxID":10,"title":"My text with the Ruining Part"}

最后我如何将我的javabean对象格式化为JSON字符串。

String jsonObjectAsString = new Gson().toJson(myJavaBeanObject);

1 个答案:

答案 0 :(得分:3)

如果字符串是硬编码的,您可能需要转义字符串中的反斜杠,以便解析的最终字符串只有一个反斜杠后跟双引号。否则,浏览器会认为您正在尝试转义字符串中的双引号,该引号不起作用。

因此请将您的字符串更改为:

...\\"R...