在Javascript中将字符串转换为Json
我的字符串是这样的:在Javascript中将字符串转换为Json,javascript,json,Javascript,Json,我的字符串是这样的: "['01',746],['02',0],['03',9994],['04',0],['05',0],['06',0],['07',0],['08',0],['09',0],['10',0],['11',0],['12',0],['13',0],['14',0],['15',0],['16',0],['17',0],['18',0],['19',0],['20',0],['21',0],['22',0],['23',0],['24',0],['25',0],['26',0]
"['01',746],['02',0],['03',9994],['04',0],['05',0],['06',0],['07',0],['08',0],['09',0],['10',0],['11',0],['12',0],['13',0],['14',0],['15',0],['16',0],['17',0],['18',0],['19',0],['20',0],['21',0],['22',0],['23',0],['24',0],['25',0],['26',0],['27',0],['28',0],['29',0],['30',0],['31',0]"
我尝试了$.parseJSON()或JSON.Parse(),但不起作用。我要用这些数据做谷歌图表。所以我需要json格式的
我该怎么做 您需要将单引号转换为双引号才能生效,并且需要将其包装为
[]
格式,以便它是一种有效的数组格式
var str = "['01',746],['02',0],['03',9994],['04',0],['05',0],['06',0],['07',0],['08',0],['09',0],['10',0],['11',0],['12',0],['13',0],['14',0],['15',0],['16',0],['17',0],['18',0],['19',0],['20',0],['21',0],['22',0],['23',0],['24',0],['25',0],['26',0],['27',0],['28',0],['29',0],['30',0],['31',0]";
var myArray = JSON.parse("[" + str.replace(/'/g,'"') + "]");
console.log(myArray[0][0], myArray[0][1]); // "01" 746
但更好的解决方案是修复生成该字符串的内容,使其成为一个有效的JSON对象启动。因为单引号在JSON中无效,并且不是有效的数组格式。如何生成该字符串?您应该修复generationa/这不是json,因为单引号。b/这不是json,因为在数组或对象之外有分隔的值c/这不是json,因为外部有双引号。