将字符串转换为*几乎* JSON [重复]

Posted

技术标签:

【中文标题】将字符串转换为*几乎* JSON [重复]【英文标题】:Converting a string to an *almost* JSON [duplicate] 【发布时间】:2022-01-20 16:52:18 【问题描述】:

所以我有一个看起来像这样的字符串:

'utopia:1,word:2,sentence:3,tourism:4,home:5'

我想将其转换为如下所示的对象:

utopia:1,word:2,sentence:3,tourism:4,home:5

我尝试在原始字符串上使用 JSON.parse(),但得到“SyntaxError: Unexpected token u in JSON at position 1”。我认为这是因为对象的键周围没有引号(在经典的 JSON 对象中,它就像 "utopia":1,...)

不知道如何解决这个问题。任何建议都非常感谢。

【问题讨论】:

“价值”总是数字吗?这个字符串的来源是什么? 值得指出的是,with eval(以及随之而来的所有危险)可以通过用括号括起来来完成,例如: eval('(' + str + ')')如图here 我认为您的意思是 from 几乎是 JSON。 【参考方案1】:

我认为你可以先用空字符串替换字符串中的 和 然后 yourstring.split(',') 之后 [items].reduce((a, v) => ( ...a, [v]: v), ) 构建您的对象

【讨论】:

以上是关于将字符串转换为*几乎* JSON [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何将数据实体转换为 JSON 字符串

js 将json字符串转换为json对象的方法解析(转)

如何将json字符串转换为数组

php如何将json对象转字符串

将JSON字符串转换为日期[重复]

jquery 怎么将json字符串转化为json对象