Javascript 使用“循环-仅最后添加的值”添加所有对象

Javascript 使用“循环-仅最后添加的值”添加所有对象,javascript,loops,Javascript,Loops,我想做的是得到一个输出,它看起来像是一把小提琴,上面有4块油炸圈饼图 不幸的是,我在这里“作弊”,因为我写道: {label : featureSet.features[0].attributes['STATE_NAME'] ,value : featureSet.features[0].attributes['MED_AGE']}, {label : featureSet.features[1].attributes['STATE_NAME'] ,value : featureSet.fea

我想做的是得到一个输出,它看起来像是一把小提琴,上面有4块油炸圈饼图

不幸的是,我在这里“作弊”,因为我写道:

{label : featureSet.features[0].attributes['STATE_NAME'] ,value : featureSet.features[0].attributes['MED_AGE']},
{label : featureSet.features[1].attributes['STATE_NAME'] ,value : featureSet.features[1].attributes['MED_AGE']},
{label : featureSet.features[2].attributes['STATE_NAME'] ,value : featureSet.features[2].attributes['MED_AGE']},
{label : featureSet.features[3].attributes['STATE_NAME'] ,value : featureSet.features[3].attributes['MED_AGE']}
我认为通过编写如下代码,可以正确返回所有输出:

var data = [];
for (var i=0; i<featureSet.features.length;i++)
{
    // Create new row/output object ..
    var output = {label : featureSet.features[i].attributes['STATE_NAME'],
                  value : featureSet.features[i].attributes['MED_AGE']};        
    // .. and then store the created object in an array
    data.push(output);
}

Morris.Donut({
    element: 'donut-example',
    // Use created array
    data: data
});

看起来像是用

{label : featureSet.features[i].attributes['STATE_NAME'] ,value : featureSet.features[i].attributes['MED_AGE']}
将在我的案例0-3中循环,但使用最后[3]输出,因此整个油炸圈饼图由一个州和年龄中位数表示

我想知道如何做到这一点,这样我就不必为每个[I]

键入内容。当前代码是:

for (var i=0; i<featureSet.features.length;i++)
{
    // Each loop re-assigns a new object to the SAME variable
    // which overwrites the previous value ..
    output = {label : featureSet.features[i].attributes['STATE_NAME'],
              value : featureSet.features[i].attributes['MED_AGE']};        
    console.log(output);
}

// Only the CURRENT (LAST) value assigned to the output variable
// inside the loop is used to create an array of one element.
Morris.Donut({
    element: 'donut-example',
    data: [output]
});
(变量i=0;i)的