从javascript中的字符串解析枚举的数组数组

时间:2013-05-14 19:17:01

标签: javascript json

我正在使用Google图表,并尝试使用javascript切换数据。

数据本身是从SQL数据库在服务器上生成的。然后将其格式化为一个字符串(我可以根据需要格式化)并将其提供给浏览器以响应AJAX请求。

不幸的是,我无法使用JSON创建一个与Google图表使用的格式相匹配的数组。这是我在javascript中直接生成变量时编写变量的示例:["United States of America", 7.0287],["Canada", 7.3005],["Australia", 6.8945]

因此,这是一个数组数组,两个数组都是枚举的而不是关联的。对于关联数组,JSON似乎比使用枚举数组好得多。

我尝试过使用jQuery的parseJSON()函数以及JSON2.js库。

var sourceData = '["United States of America", 7.0287],["Canada", 7.3005]';
//(the source data is usually pulled by AJAX, but comes in this format)
var resultArray = new Array();

resultArray = JSON.parse(sourceData); //doesn't work

resultArray = $.parseJSON(sourceData); //doesn't work

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

这不是数组数组,这是:

[["United States of America", 7.0287],["Canada", 7.3005],["Australia", 6.8945]]

没有周围的[],这只是语法错误。

答案 1 :(得分:0)

var sourceData = '["United States of America", 7.0287],["Canada", 7.3005]',
    resultArray = JSON.parse("[" + sourceData + "]");

工作JSFiddle