请问jquery中把一个有格式string,如何转换成一个json?

这是得到的string字符串:
"usa": {
label: "USA",
data: [[1988, 483994], [1989, 479060]]
},
"russia": {
label: "Russia",
data: [[1988, 218000], [1989, 203000]]
}
我要把它转换成这样的形式(我也不知道这是object还是数组还是object的数组):

var datasets = {
"usa": {
label: "USA",
data: [[1988, 483994], [2006, 528692]]
},
"russia": {
label: "Russia",
data: [[1988, 218000], [1989, 203000]]
}};

注明:string的格式是自己写成json文件,格式自己定的。只要能得到这个结果,我可以根据大侠的建议,写成其它格式,或者XML文件。先给15分,可以在追加,免得没人回答,浪费。。
最新回答
浅夏忆梦

2024-06-08 10:20:04

通过eval方式进行转换。

举例:

var str = '{a:"1"}';//定义了一个string格式
var json = eval('('+str + ')');//通过eval转换成json对象

补充:

eval加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语 句(statement)来执行。举一个例子,例如对象字面量{},如若不加外层的括号,那么eval会将大括号识别为JavaScript代码块的开始 和结束标记,那么{}将会被认为是执行了一句空语句。 

豆芽没营养

2024-06-08 17:15:15

不需要jquery,一句简单的js代码就可以了
var str = "{name:'a',age:23}";
var json = eval('('+str+')');
alert(json.age);