我有混杂的json对象,当我尝试在PieData中循环以填充pieChart时,我正在为这个错误而苦苦挣扎,这是我的代码

  var PieData        = [

       for(b in quizs[i].quests[j].reps){
           //quizs[i].quests[j]["quizId"]
        /*   if(quizs[i].quests[j].reps[b]["stat"]==null){
               var l = 1;
           }
           else{
               var l =quizs[i].quests[j].reps[b]["stat"]
           }*/

           {
          {%set h = 'hex'%}


    value    : 2,
    startAngle: 240,
    color    : '{{h}}',
    label    : quizs[i].quests[j].reps[b]["rep"]
  },  }
       ];


当我如果我尝试更改为static for => for(var r = 0; r 我总是遇到同样的错误,感谢任何帮助

最佳答案

您不能在数组声明中使用for

var PieData = [];
for (var b in quizs[i].quests[j].reps) {
    PieData.push({
        value: 2,
        startAngle: 240,
        color: "{{h}}",
        label: quizs[i].quests[j].reps[b]["rep"]
    });
}


Array#map在这里看起来更干净

var PieData = quizs[i].quests[j].reps.map(i => ({
    value: 2,
    startAngle: 240,
    color: "{{h}}",
    label: i.rep
}));

10-06 15:12