在javascript

时间:2016-08-09 17:02:27

标签: javascript

我正在尝试在我的网站(FusionCharts)中实施图表,我不想手动定义每个条形图。有没有办法在这里实现for循环? (for(i = 1; i< = 11; i ++)我的问题是' {'&'},'

FusionCharts示例如下

    "data": [{
        "label": "Jan",
        "value": "420000"
    }, {
        "label": "Feb",
        "value": "810000"
    }, {
        "label": "Mar",
        "value": "720000"
    }, {
        "label": "Apr",
        "value": "550000"
    }, {
        "label": "May",
        "value": "910000"
    }, {
        "label": "Jun",
        "value": "510000"
    }, {
        "label": "Jul",
        "value": "680000"
    }]
}
}
);

我唯一的解决方案是在for循环中使用以下内容,但它不能与括号一起使用。

     {
        "label": "xxxx",
        "value": "xxxxx"
    },

...

    for (i=1; i<=11; i==) 
     {

        {
        "label": "xxxx",
        "value": "xxxxx"
    },

     }

我意识到在这种情况下我可能是愚蠢的,所以感谢任何建议

4 个答案:

答案 0 :(得分:2)

在循环中你可以写

data.push({
    "label": "xxxx",
    "value": "xxxxx"
});

答案 1 :(得分:0)

  

但它不能与括号一起使用。

它会:

for (i=1; i<=11; i++) 
{
    data.push({
        "label": "xxxx",
        "value": "xxxxx"
   });
}

...但你仍然需要从某处获得标签和价值。

旁注:不要忘记宣布i,以免你成为The Horror of Implicit Globals的牺牲品。

答案 2 :(得分:0)

...根据您所需的格式,您可以按照以下方式播放;

let data = [{
        "label": "Jan",
        "value": "420000"
    }, {
        "label": "Feb",
        "value": "810000"
    }, {
        "label": "Mar",
        "value": "720000"
    }, {
        "label": "Apr",
        "value": "550000"
    }, {
        "label": "May",
        "value": "910000"
    }, {
        "label": "Jun",
        "value": "510000"
    }, {
        "label": "Jul",
        "value": "680000"
    }];


var arr =[];
var arr2 =[];

data.forEach( (obj) => {
  console.log(obj.label, obj.value);
  let ttlArrOpt1 = arr.push(obj.label, obj.value);
  // or option 2:
  let ttlArrOpt2 = arr2.push(obj.label + " = " + obj.value)

}
);
console.log(arr);
console.log(arr2);

let arrOpt2 = arr.join('/');
console.log(arrOpt2)

答案 3 :(得分:0)

var rawData = ''; 
for(var i = 0; i <= 2; i++){    
        rawData = rawData.concat('{"label": "'+ ( i + 2 ) +'","value": "'+     i +'"},');
}
rawData = rawData.substring(0, rawData.length - 1);
rawData = '{"data"\: ['.concat(rawData , ']}');
var finalData = JSON.parse(rawData);