如何使用JavaScript(或jQuery)将描述对象的字符串转换为JSON字符串?

e、 g:将其转换为(NOT个有效的JSON字符串):

var str = "{ hello: 'world', places: ['Africa', 'America', 'Asia', 'Australia'] }"

into this:

str = '{ "hello": "world", "places": ["Africa", "America", "Asia", "Australia"] }'

如果可能的话,我希望避免使用eval().

推荐答案

If the string is from a trusted source,你可以用eval然后用JSON.stringify来计算结果.这样地:

var str = "{ hello: 'world', places: ['Africa', 'America', 'Asia', 'Australia'] }";
var json = JSON.stringify(eval("(" + str + ")"));

请注意,当你输入一个对象文字时,它必须用括号括起来,否则大括号将被解析为一个块而不是一个对象.

我也同意这个问题下的 comments ,那就是最好先用有效的JSON编码对象,避免解析、编码,然后大概again次解析它.HTML支持单引号属性(只需确保HTML编码字符串中的任何单引号).

Json相关问答推荐

PostgreSQL 12.17从JSON数组提取元素

使用单元和非单元版本反序列化Rust中的枚举,而无需编写自定义反序列化程序

为什么JQ筛选器不将原始输入打印为$var|.';文档?

在PowerShell中,如何获取数据对所在的JSON对象的名称

如何在改装Android中将ResponseBody转换为JSONObject

将 json 转换为 jsonb 安全吗?

Python 将 struct 化文本转换和筛选为对象

将环境变量值从 yaml 传递到 json

xidel:是否可以从 JSON 对象中检索特定的嵌套值?

Shell脚本空格转义

转义 Haskell 记录的字段

如何在 Postman 中匹配 json 响应中的内容?并可视化

Powershell中等效的JSONPath通配符以 Select 对象中的所有数组

如何为包含一些固定值并可能具有其他附加值的数组字符串创建数组 json 架构

如何使用 LINQ 在 C# 中重构对象?

如何使用 Swiftui 判断 JSON 是否缺少键值对

缺少所需的请求正文内容:org.springframework.web.method.HandlerMethod$HandlerMethodParameter

使用 Spring 和 JsonTypeInfo 注释将 JSON 反序列化为多态对象模型

如何使用 Json.NET 反序列化可以是两种不同数据类型的 JSON 属性

XML vs YAML vs JSON