我正在开发一个使用javascript的web应用程序,我必须接收并解析一个看起来像这样的JSON字符串:
{name:"", house:""}
将其转换为正确的符号的最佳方法是什么?
{"name":"", "house":""}
提前致谢!
答案 0 :(得分:2)
var str = '{name:"", house:""}';
var newStr = JSON.stringify( eval( '(' + str + ')' ) );
console.log(newStr); //{"name":"", "house":""}
如果数据源不受信任,请不要使用eval
。
顺便说一下,你确定你收到了一个结构糟糕的JSON字符串,它不仅仅是一个对象吗?如果您正在使用jQuery,它会自动将JSON响应解析为对象。在这种情况下,您只需调用JSON.stringify
传递对象以从中生成有效的JSON字符串,或访问请求的responseText
。使用jQuery Ajax Fiddle。