如何将以下字符串转换为json对象?

时间:2018-09-13 08:30:18

标签: javascript

var str = '""{""as"":""N9K-93180YC-EX""}""';

我尝试使用正则表达式

var str1 =  str.replace(/\"/g, "");

在那之后,我得到了像"{as:N9K-93180YC-EX}"这样的字符串。因此,我无法使用JSON.parse(str1)来解析字符串。抛出类似这样的错误,

  

未捕获到的SyntaxError:JSON中位置1处出现意外令牌。

有人可以帮我吗?

预先感谢

2 个答案:

答案 0 :(得分:3)

除了API问题外,您还可以将双双引号替换为单双引号,并省略用于分析的第一个和最后一个双引号。

var str = '""{""as"":""N9K-93180YC-EX""}""',
    object = JSON.parse(str.replace(/\"\"/g, '"').slice(1, -1));

console.log(object);

答案 1 :(得分:0)

这可以是另一种方法

var str = '""{""as"":""N9K-93180YC-EX""}""';
var str1 = str.replace(/\"/g, "'");
str1 = str1.replace(/''/g, "'");   
var result = str1.slice(1,-1);
alert(JSON.parse('"'+result+'"'));