我正在尝试在运行时为Animated Time-Line Pie Chart
动态推送数据以下是代码:
var array = new Array();
function pushvalue(curyear,curmonth,monvalue){
array.push({year: curyear, month: curmonth, count: moncount});
}
var chartdata = new Array();
for (var i=1; i < array.length; i++){
chartdata = {
“Year”: array[i].year: [
{ “Month”: array[i].month, “Count”: array[i].count }, ] };
}
数组的值来自文件输入。
我得到的问题是chartdata无法获得与对象年分配给它的值,如果我在”Year”: array[i].year
之后包含或排除':',它会显示错误,如预期的'}'或语法错误p>
我可以知道我做错了什么以及如何解决这个问题? 谢谢!
答案 0 :(得分:0)
分配新年的语法错误。你不能做“年”:varname:[...]在一行。您需要将其更改为以下内容:
for (var i = 0; i < array.length; ++i) {
if (!chartData[array[i].year]) {
chartData[array[i].year] = [];
}
chartData[array[i].year].push({"Month": array[i].month, "Count": array[i].count });
}
使用一些假值进行演示:http://jsfiddle.net/9428r6fw/4/
另请注意,您的pushvalue
方法有误 - 您的计数参数名为monvalue
,但您尝试推送moncount