微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在javascript中反转单引号和双引号以使其成为用于解析的有效json

如何解决如何在javascript中反转单引号和双引号以使其成为用于解析的有效json

我有一个这样的 API 响应:

[{'name': 'men','slug': 'men'},{'name': 'women','slug': 'women'}]

当我将它字符串化时它变成

const raw = JSON.stringify(resp)
"[{'name': 'men','slug': 'women'}]"

我想要这种格式,

'[{"name": "men","slug": "men"},{"name": "women","slug": "women"}]'

我尝试使用replaceAll和replace函数,但无法正确转换,谁能帮我解决这个问题?

解决方法

我建议修复 API 以返回有效的 JSON。

其他隔离:

  1. 快速但危险:使用 eval() 函数,即:

     eval('var data = ' + resp)
     const raw = JSON.stringify(data)
    
  2. 更安全但乏味:编写自己的解析器来解析这个几乎是 JSON 的 API 响应。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。