我正在使用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
有什么想法吗?
答案 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