【问题标题】:How to convert string to object in javascript?如何在javascript中将字符串转换为对象?
【发布时间】:2021-08-21 14:38:20
【问题描述】:
const str="{a:{url:'http://localhost:80',c:1,},d:'d',e:true}"

如何在不使用 evil 和 new Function 的情况下得到结果:

const obj={a:{url:'http://localhost:80',c:1,},d:'d',e:true}

【问题讨论】:

  • 建议:让生成 str 的任何东西都生成有效的 JSON,而不是随机格式。然后将其解析为 JSON。
  • 那么您的选择是eval/new Function 或更改字符串使其成为有效的 JSON 或构建解析器
  • @SudhirOjha 此问题中的字符串不是有效的 JSON。解析它没有帮助。
  • 没错。 JSON 无效

标签: javascript string object


【解决方案1】:

首先:

您需要将字符串格式化为有效的 JSON 格式(双引号而不是单引号)

然后你只需要JSON.parse(str)

【讨论】:

    【解决方案2】:

    要将字符串转换为 json,您可以使用 JSON.parse(str)
    但首先要确保字符串语法正确,有几个网站可以做到这一点,其中一个是https://jsonlint.com/

    【讨论】:

      猜你喜欢
      • 2020-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-29
      • 1970-01-01
      • 2011-03-04
      • 1970-01-01
      相关资源
      最近更新 更多