如何将对象数据转换为json格式,以便jqplot可以生成图表?

时间:2016-10-25 06:01:08

标签: javascript json jqplot freeboard

我的数据来自谷歌电子表格的以下格式:

Object {reporttime: "04-09-2016 0:00", msisdn: "9987579170", city: "NOIDA", product: "Advantage3000", ceiindex: "85"…}

我想将上述数据转换为json格式,例如:

  [[
    ['reporttime', "04-09-2016 0:00"],['msisdn', "9987579170"], ['city', 'NOIDA'], 
    ['product', 'Advantage3000']
  ]]

我正在尝试使用jqplot创建图表。也得到错误:没有指定数据。

2 个答案:

答案 0 :(得分:1)

你需要有mapper函数将输入转换为输出这样的东西。

已更新为仅在输出中选择了字段。



var input = {
  reporttime: "04-09-2016 0:00",
  msisdn: "9987579170",
  city: "NOIDA",
  product: "Advantage3000",
  ceiindex: "85",
  product: 'Advantage3000'
};

function mapper(input, requiredKeys) {
  var output = Object.keys(input).map(function(key) {
    if (input.hasOwnProperty(key) && requiredKeys.includes(key)) {
      return [key, input[key]];
    }
  }).filter(function(value) {
    return value !== undefined;
  });

  console.log(output);
}
var requiredKeys = ["city", "product", "reporttime"];
mapper(input, requiredKeys);




答案 1 :(得分:-1)

var responseArr = [];
for (var x in DataObj) {
  var initArr = [];
  initArr.push(x);
  initArr.push(DataObj[x]);
  responseArr.push(initArr);
};

这个输出可以推送到另一个数组,以获得你想要的格式。将输入对象传递给for循环。