highchart最小化代码冗余

时间:2013-06-21 10:55:34

标签: javascript

我正在使用HighCharts绘制图形,并且有一些我希望最小化的代码冗余

代码如下所示:

data = [{
        y: pageViews[0],
        color: colors[0],
        drilldown: {
            name: date[0],
            categories: ['a','b','c'],
            data: [photosR[0], ratingsR[0], searchesR[0], socialR[0]],
            color: colors[0]
        }
    }, {
        y: pageViews[1],
        color: colors[1],
        drilldown: {
            name: date[1],
            categories: ['a','b','c'],
            data: [photosR[1], ratingsR[1], searchesR[1], socialR[1]],
            color: colors[1]
        }
    }]

这是高图中的向下钻取条形图。我想创建一个循环而不是编写以下代码2次

y: pageViews[0],
color: colors[0],
drilldown: {...}

我觉得这与对象有关,但还没有对它有很多了解

1 个答案:

答案 0 :(得分:0)

我假设您的所有数组都具有相同的长度,因此循环任何数组都是安全的 这应该适合你:

var data = [];
for (var i = 0; i < pageViews.length; i++) {
   data.push({
      y: pageViews[i],
      color: colors[i],
      drilldown: {
         name: date[i],
         categories: ['a','b','c'],
         data: [photosR[i], ratingsR[i], searchesR[i], socialR[i]],
         color: colors[i]
      }
   });
}