Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中将字符串转换为Json_Javascript_Json - Fatal编程技术网

在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,因为外部有双引号。