在javascript中使用JSON时出现问题

时间:2016-06-29 13:16:38

标签: javascript json

在使用json时,我得到了字符串

var result=  "[\"Emp1\", \"46\", \"46\", \"46\"], [\"Emp2\", \"113\", \"117\", \"117\"]"

我需要将上面的json转换为

var jsonRes=[["Emp1", "46", "46", "46"], ["Emp2", "113", "117", "117"]]

如何进行此转换

2 个答案:

答案 0 :(得分:2)

你可以做这样的事情



var result = "[\"Emp1\"46\",\"46\",\"46\"],[\"Emp2\",\"113\",\"117\",\"117\"]";

console.log(
  result.slice(1, -1).split('],[').map(function(v) {
    return v.match(/[^",]+/g);
  })
)




更新:如果您在\",中添加\"Emp1\"46\",则可以通过使字符串有效JSON来使用JSON.parse



var result = "[\"Emp1\",\"46\",\"46\",\"46\"],[\"Emp2\",\"113\",\"117\",\"117\"]";

console.log(
  JSON.parse('['+result+']')
)




答案 1 :(得分:2)

结果无效,JSON和双引号未正确转义。如果您已正确转义结果,则可以使用JSON.parse。

var result= '[\"Emp1\",\"46\",\"46\"],[\"Emp2\",\"113\",\"117\",\"117\"]'

 result = "["+result+"]"

console.log(JSON.parse(result)[0]);

相关问题