首页 > 解决方案 > 如何将字符串解析为“标题对象”?

问题描述

我在 Javascript 中有一个字符串。它看起来有点像这样:

' "foo": "" , /n "bar": "" '

我需要它,所以我可以请求一个 API,请求是这样的:

$http
  .post(urlToAPI, {
    "foo": "",
    "bar": ""
  })
  .success(function(data) {
    console.log("yay")
  })

如您所见,作为参数,我为 post 方法提供了一个包含 foo 和 bar 的结构。问题是我不能在那里传递我自己的字符串,因为我需要先解析它。

所以,基本上,我需要这个

' "foo": "" , /n "bar": "" '

变成这样:

"foo": "", "bar": ""

我尝试使用JSON.parse(),但它不起作用,因为它不是 JSON 对象。我也尝试了一些 CSV 转换器,但它似乎也不是 CSV。我什至不知道这种结构的名称,所以我一直在为如何解析它而苦苦挣扎。

你有什么线索吗?

标签: javascriptstring-parsing

解决方案


假设你的意思是 /n 而不是 \n

var str = ' "foo": "" , /n "bar": "" ';
JSON.parse(('{' + str + '}').replace(' /n', ''));

推荐阅读