首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用javascript转换JSON结构

使用javascript转换JSON结构
EN

Stack Overflow用户
提问于 2016-09-21 16:51:31
回答 2查看 57关注 0票数 0

有没有人可以帮我用javascriptjquery转换JSON的下面的array

代码语言:javascript
运行
复制
[ 
[{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"Packet"}],
[{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"car"}],
[{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"bike"}]
]

转到

代码语言:javascript
运行
复制
[
{"name":"Packet","date":"Day1","value":10},
{"name":"Packet","date":"Day2","value":154},
{"name":"Packet","date":"Day3","value":24},
{"name":"Packet","date":"Day4","value":48},
{"name":"Packet","date":"Day5","value":154},
{"name":"Packet","date":"Day6","value":48},
{"name":"Packet","date":"Day7","value":154},

{"name":"car","date":"Day1","value":10},
{"name":"car","date":"Day2","value":154},
{"name":"car","date":"Day3","value":24},
{"name":"car","date":"Day4","value":48},
{"name":"car","date":"Day5","value":154},
{"name":"car","date":"Day6","value":48},

{"name":"bike","date":"Day1","value":10},
{"name":"bike","date":"Day2","value":154},
{"name":"bike","date":"Day3","value":24},
{"name":"bike","date":"Day4","value":48},
{"name":"bike","date":"Day5","value":154},
{"name":"bike","date":"Day6","value":48},]`

请提供任何帮助或任何例子,我可以获得一些hint....as我是新手JS

EN

回答 2

Stack Overflow用户

发布于 2016-09-21 20:01:05

你可以这样做。

代码语言:javascript
运行
复制
var array = [
  [{ "day1": 10,"day2": 154,"day3": 24,"day4": 48,"day5": 154,"day6": 48,"day7": 154,"name": "Packet" }],
  [{ "day1": 10,"day2": 154,"day3": 24,"day4": 48,"day5": 154,"day6": 48,"day7": 154,"name": "car" }],
  [{ "day1": 10,"day2": 154,"day3": 24,"day4": 48,"day5": 154,"day6": 48,"day7": 154,"name": "bike" }]
];

function convert(array) {
  if (!array instanceof Array && array.length === 0) {
    return array;
  }
  
  var result = [];
  for (var i = 0; i < array.length; i++) {
    var item = array[i][0];
    var name = item.name;
    
    for (var key in item) {
      if (key === 'name') {
      	continue;
      }
      
      result.push({ "name": name,"date": key,"value": item[key]});
    }
  }
  
  return result;
}

var result = convert(array);
console.log(result);

票数 1
EN

Stack Overflow用户

发布于 2016-09-22 00:26:07

代码语言:javascript
运行
复制
var inp = [ 
          [{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"Packet"}],
          [{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"car"}],
          [{"day1":10,"day2":154,"day3":24,"day4":48,"day5":154,"day6":48,"day7":154,"name":"bike"}]
          ];

var res=[];
inp.map(x=>x.map(y=>{for(z in y) {if (z!='name')  res.push({"name":y.name, "date":z,"value":y[z] });}}));
JSON.stringify(inp);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39611765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档