安全地将 JSON 字符串转换为对象

新手上路,请多包涵

给定一串 JSON 数据,我如何安全地将该字符串转换为 JavaScript 对象?

显然,我可以通过以下方式不安全地执行此操作:

var obj = eval("(" + json + ')');

但这让我容易受到包含其他代码的 JSON 字符串的影响,简单地评估似乎非常危险。

原文由 Matt Sheppard 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 916
2 个回答

JSON.parse(jsonString) 是一种纯 JavaScript 方法,只要你能保证一个相当现代的浏览器。

原文由 Jonathan. 发布,翻译遵循 CC BY-SA 3.0 许可协议

jQuery 方法现已弃用。请改用此方法:

 let jsonObject = JSON.parse(jsonString);


_使用已弃用的 jQuery 功能的原始答案_:

如果您使用的是 jQuery,只需使用:

 jQuery.parseJSON( jsonString );

这正是您要查找的内容(请参阅 jQuery 文档)。

原文由 Alex V 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题