Javascript 将空值显示为零

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)。 我需要它看起来像这样: 如果数据按年份排序,则可以使用以下代码

我正在和Morris js做一张图表。 我从服务器获取日期和值的列表。 但是有些日期不存在,我想用值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}
]