【问题标题】:Correcting JSON string with incorrect notation?用不正确的符号更正 JSON 字符串?
【发布时间】:2012-11-11 02:13:32
【问题描述】:

我正在开发一个使用 javascript 的 Web 应用程序,我必须接收并解析一个如下所示的 JSON 字符串:

{name:"", house:""}

将其转换为正确符号的最佳方法是什么?

{"name":"", "house":""}

提前致谢!

【问题讨论】:

  • 你为什么要改变它?在名称中有特殊字符之前似乎是正确的/
  • 如果您收到的是该格式的字符串,则它不是 JSON。

标签: javascript json


【解决方案1】:
var str = '{name:"", house:""}';
var newStr = JSON.stringify( eval( '(' + str + ')' ) );
console.log(newStr); //{"name":"", "house":""}

Fiddle

如果数据源不受信任,请勿使用eval


顺便说一句,您确定您收到的是格式错误的 JSON 字符串,而且它不仅仅是一个对象吗?如果您使用 jQuery,它会自动将 JSON 响应解析为对象。在这种情况下,您只需调用JSON.stringify 传递对象以从中生成有效的JSON 字符串,或访问请求的responseTextFiddle 使用 jQuery Ajax。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-11
    • 2018-04-03
    • 1970-01-01
    • 2012-08-30
    • 2015-10-10
    • 1970-01-01
    • 2017-11-26
    • 2019-01-17
    相关资源
    最近更新 更多