Javascript 将空值显示为零
我正在和Morris js做一张图表。 我从服务器获取日期和值的列表。 但是有些日期不存在,我想用值0显示不存在的日期 例如: 如果这是我的数据列表:Javascript 将空值显示为零,javascript,jquery,json,morris.js,Javascript,Jquery,Json,Morris.js,我正在和Morris js做一张图表。 我从服务器获取日期和值的列表。 但是有些日期不存在,我想用值0显示不存在的日期 例如: 如果这是我的数据列表: data: [ { year: '2008', value: 20 }, { year: '2009', value: 10 }, { year: '2012', value: 50 } 我得到了一张从2009年到2012年的图表,但看不到2010年和2011年的值(应该是0)。 我需要它看起来像这样: 如果数据按年份排序,则可以使用以下代码
data: [
{ year: '2008', value: 20 },
{ year: '2009', value: 10 },
{ year: '2012', value: 50 }
我得到了一张从2009年到2012年的图表,但看不到2010年和2011年的值(应该是0)。
我需要它看起来像这样:
如果数据按年份排序,则可以使用以下代码:
var result = [];
var previous = null;
for (var i in data) {
var item = data[i];
if (previous != null)
for (var year = previous + 1; year < parseInt(item.year); year++)
result.push({year: new String(year), value: 0});
result.push(item);
previous = parseInt(item.year);
}
你能告诉我们你用来创建错误图表的代码吗?您的
数据
不包含2010年、2011年的信息。。。为这些年创建条目(使用值:0
)怎么样?嗯,我希望可以避免创建额外的数据。不过,这段代码看起来不错。谢谢你,今天或今年之前显示价值如何?
[
{"year":"2008","value":20},
{"year":"2009","value":10},
{"year":"2010","value":0},
{"year":"2011","value":0},
{"year":"2012","value":50}
]