从字符串片段构建JSON

时间:2014-09-10 15:28:47

标签: extjs extjs4

我现在在ExtJS4中使用折线图。该图表基于商店的数据。商店通过help' loadRawData()'更改其数据。功能。 熟悉的情况,不是吗?

AJAX每10秒发送一次字符串,我需要从这些字符串中构建JSON。我正在尝试:

success: function(response) {
    var requestMassive = JSON.parse(response.responseText);
    var jArray = [];
                for(var i=0;i<requestMassive.length;i++){
                    var firstPiece = JSON.parse(response.responseText)[i].date; 
                    var secondPiece = JSON.parse(response.responseText)[i].connectCount;
                    var recording = "{'machinesPlayed':"+firstPiece+", 'machinesOnline':"+secondPiece+"}";
                    jArray.push(recording);
                }

                jArray = '['+jArray+']';
                store.loadRawData(jArray);
}

但这是错误的方式。怎么做得好?

2 个答案:

答案 0 :(得分:1)

我没有得到你想要达到的目标。但它可以这样形成。试试这个。

var recording = {
  "machinesPlayed" : firstPiece,
  "machinesOnline" : secondPiece
 }
jArray.push(recording);

OR
jArray.push({
    "machinesPlayed" : firstPiece,
    "machinesOnline" : secondPiece
});

答案 1 :(得分:1)

您可以使用loadData()功能代替loadRawData()loadData()只需要一组对象。

success: function(response) {
   var requestMassive = JSON.parse(response.responseText);
   var jArray = [];
      for(var i=0;i<requestMassive.length;i++){
         jArray.push({ machinesPlayed: requestMassive[i].date, machinesOnline: requestMassive[i].connectCount});
      }

      store.loadData(jArray);
}