【发布时间】:2014-05-07 19:06:58
【问题描述】:
我有一个硬编码的 JSON 对象,我将其传递给 google.visualization.DataTable() 以创建数据表对象,但似乎出了点问题。我在可视化 api 中发现了一个 JS 错误:“未捕获的 TypeError:未定义不是函数”。这是 JSON 数据:
var jsonData = {
cols: [
{id: 'date', label: 'Sample Date', type: 'date'},
{id: 'countervalue', label: 'Counter Value', type: 'number'}
],
rows: [
{c: [ {v: Date(2014, 4, 30, 10, 30, 0)}, {v: 2457.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 30, 15)}, {v: 2458.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 30, 30)}, {v: 2459.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 30, 45)}, {v: 2452.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 31, 0)}, {v: 2451.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 31, 15)}, {v: 2443.0} ] },
{c: [ {v: Date(2014, 4, 30, 10, 31, 30)}, {v: 2444.0} ] }
]
};
这就是看起来要爆炸的地方:
var data = google.visualization.DataTable(jsonData);
这是解决方案的 JSFiddle: http://jsfiddle.net/jcaine04/3PJph/2/
【问题讨论】:
-
仅供参考,this is not a JSON object,这是一个普通的 JavaScript 对象。您的问题与 JSON 没有任何关系,因此我建议您相应地更新它。
-
此解决方案最终将调用返回 JSON 的 Web 服务,但出于测试目的,我对这个值进行了硬编码。所以我不会删除这个问题的 JSON 相关性。编辑:这是我要重新创建的链接:google-developers.appspot.com/chart/interactive/docs/…
-
我尝试使用 google.visualization.DataTable(JSON.stringify(jsonData)) 仍然得到相同的结果。
-
尝试使用下面提到的'NEW'构造函数
标签: javascript html json google-visualization