我有一个JSON字符串,我正在尝试使用jQuery检查它是否是JSON对象。我用过
try {
var jsonObject = jQuery.parseJSON(yourJsonString);
}
catch (e) {
// handle error
}
并使用json = eval("{" + jsonString + "}");
..
这是我的小提琴。任何人都可以告诉我JSON格式的问题是什么吗?
答案 0 :(得分:2)
首先,当使用eval
来解析受信任的JSON时,您将文字包装在括号中以强制将其解析为表达式 - 而不是花括号,这实际上不会改变有关如何评估它的任何内容使用eval
时。由于JSON.parse
现在享有相当广泛的支持,因此请使用它。
接下来,JSON中有转义序列。
"password":"RwKmzDQppBSLz61Ciw5IZQ\u003d\u003d\r\n"
当您将它们放在JavaScript字符串文字中时,它们会被解析为它们所代表的字符,从而使JSON无效。您需要对它们进行双重转义才能进行测试,如:
'…"password":"RwKmzDQppBSLz61Ciw5IZQ\\u003d\\u003d\\r\\n"…'
答案 1 :(得分:1)
试试这个 -
var response=jQuery.parseJSON(yourJsonString);
if(typeof(response) =='object')
{
//It is JSON
}