0

我正在使用 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

有任何想法吗?

4

2 回答 2

0

这不是数组数组,这是:

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

没有周围[],它只是一个语法错误。

于 2013-05-14T19:19:58.630 回答
0
var sourceData = '["United States of America", 7.0287],["Canada", 7.3005]',
    resultArray = JSON.parse("[" + sourceData + "]");

工作JSFiddle

于 2013-05-14T19:22:45.907 回答