在javascript中将特定格式的字符串转换为JSON

在javascript中将特定格式的字符串转换为JSON,javascript,json,jsp,dictionary,Javascript,Json,Jsp,Dictionary,我有一个字符串的格式 var str = "{key1=value1, Key2=value2}" 我需要将其转换为json对象,以便能够对其进行迭代 有没有关于如何做到这一点的建议?可以有任意数量的键您首先需要“JSONize”这个字符串,这样就可以使用JSON类将它转换为JavaScript对象。我的猜测是,如果字符串总是这种格式({key=value,…}),那么您可以先这样解析它: var parsedString = yourString.replace(/(\b\S+\b)=(\

我有一个字符串的格式

 var str = "{key1=value1, Key2=value2}"
我需要将其转换为json对象,以便能够对其进行迭代

有没有关于如何做到这一点的建议?可以有任意数量的键

您首先需要“JSONize”这个字符串,这样就可以使用
JSON
类将它转换为JavaScript对象。我的猜测是,如果字符串总是这种格式(
{key=value,…}
),那么您可以先这样解析它:

var parsedString = yourString.replace(/(\b\S+\b)=(\b\S+\b)/g, '"$1":"$2"')
这样,从这里:
“{key1=value1,Key2=value2}”
您可以得到:
“{key1:“value1”,“Key2:“value2”}”

然后,正如有人建议的那样,只需使用
JSON.parse(parsedString)
来获取JS对象。

您需要首先对获取的字符串进行“JSONize”,以便使用
JSON
类将其转换为JavaScript对象。我的猜测是,如果字符串总是这种格式(
{key=value,…}
),那么您可以先这样解析它:

var parsedString = yourString.replace(/(\b\S+\b)=(\b\S+\b)/g, '"$1":"$2"')
这样,从这里:
“{key1=value1,Key2=value2}”
您可以得到:
“{key1:“value1”,“Key2:“value2”}”


然后,正如有人建议的那样,只需使用
JSON.parse(parsedString)
即可获得JS对象。

您的想法是什么?这不是一个免费的编码服务提示:您需要确保键被引号包围(如“key1”),并且等号被替换为冒号。请看下面的stackoverflow讨论!这个讨论与我收到的作为文件参数的jsp hashmap的问题不匹配。它是使用标记传递的,因此它被转换为上述格式的字符串。你的想法是什么?这不是一个免费的编码服务提示:您需要确保键被引号包围(如“key1”),并且等号被替换为冒号。请看下面的stackoverflow讨论!这个讨论与我收到的作为文件参数的jsp hashmap的问题不匹配。它是使用标记传递的,因此它被转换为上述格式的字符串。