我正在尝试使用 我收到了这个错误: 知道错误发生在此部分的 我尝试通过 相同:(,不起作用..任何人都知道如何使用JSON.parse
将var o = JSON.parse(str);
SyntaxError: Unexpected token ? in JSON at position 362
at Object.parse (native)
?
上:{...
"11. More Info":"http://www.mysilte.com/na5638\?lid=10064669521",
...
}
?
:JSON.parse
var o = JSON.parse(str,function(k,v){
return (typeof v ==='string')? v.replace('?','') : v;
});
JSON.parse
或任何node.js包执行此操作。
答案 0 :(得分:1)
由于您的json-string是不一个真正的json字符串(但可能接近),您可能希望"修复"您在字符串中遇到的\\?
问题。
以下是一个例子:
a = '{"11. More Info":"http://www.mysilte.com/na5638\\?lid=10064669521"}'
try {
JSON.parse(a)
} catch (e) {
console.log("can't parse the string as JSON string")
}
json_obj = JSON.parse(a.replace("\\?", "?"))
console.log(json_obj)

我真的不推荐这个,你应该确保在解析它之前得到一个正确的json-string,但有时你不能控制你得到的输入,所以这个解决方案可能帮助你)。