js如何将一个一维json数组转化成二维的json数组

qq_39191480 2018-05-19 02:53:42


如图,目前后台返回的数据格式是把所有订单里面的商品全部都混杂的放在一起了,现在就是说想把他们根据订单编号整合到一起去,所有订单编号相同的商品把他们共有的属性放到一个对象里面,其余不同的再放到一个对象数组里面最终的数据格式大致如下

...全文
744 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_39191480 2018-05-19
  • 打赏
  • 举报
回复
引用 4 楼 jslang 的回复:


var data = [
    {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:1,ordernumber:"5767620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"片",productId:null,productName:"牛排",productPrice:1053,status:"1"},
    {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:2,ordernumber:"5767620180519",phone:null,photoPoster:"product/sanwen/sanwenPoster.jpg",productExplain:"片",productId:null,productName:"三文鱼",productPrice:53,status:"1"},

    {addr:"1167888广东省广",now:"2018-05-19 12:05:46",number:1,ordernumber:"3125620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"个",productId:null,productName:"猪蹄",productPrice:124,status:"2"},

    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"瓶",productId:null,productName:"红酒",productPrice:8888,status:"3"},
    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"袋",productId:null,productName:"坚果",productPrice:50,status:"3"},
    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"盒",productId:null,productName:"抽纸",productPrice:12,status:"3"}
];

var newData = [];
data.forEach(function(v, i){
	var n;
	for (var i = 0; i < newData.length; i++) {
		var t = newData[i];
		if (t.ordernumber==v.ordernumber) {
			n = t;
			break;
		}
	}
	if (!n) {
		n = {ordernumber:v.ordernumber,status:v.status,list:[]};
		newData.push(n);
	}
	delete v.ordernumber;
	delete v.status;
	n.list.push(v);
});

console.log(newData);
感谢大佬
天际的海浪 2018-05-19
  • 打赏
  • 举报
回复


var data = [
    {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:1,ordernumber:"5767620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"片",productId:null,productName:"牛排",productPrice:1053,status:"1"},
    {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:2,ordernumber:"5767620180519",phone:null,photoPoster:"product/sanwen/sanwenPoster.jpg",productExplain:"片",productId:null,productName:"三文鱼",productPrice:53,status:"1"},

    {addr:"1167888广东省广",now:"2018-05-19 12:05:46",number:1,ordernumber:"3125620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"个",productId:null,productName:"猪蹄",productPrice:124,status:"2"},

    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"瓶",productId:null,productName:"红酒",productPrice:8888,status:"3"},
    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"袋",productId:null,productName:"坚果",productPrice:50,status:"3"},
    {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"盒",productId:null,productName:"抽纸",productPrice:12,status:"3"}
];

var newData = [];
data.forEach(function(v, i){
	var n;
	for (var i = 0; i < newData.length; i++) {
		var t = newData[i];
		if (t.ordernumber==v.ordernumber) {
			n = t;
			break;
		}
	}
	if (!n) {
		n = {ordernumber:v.ordernumber,status:v.status,list:[]};
		newData.push(n);
	}
	delete v.ordernumber;
	delete v.status;
	n.list.push(v);
});

console.log(newData);
qq_39191480 2018-05-19
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
原始json数据发一下(别发图片)
var data = [ {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:1,ordernumber:"5767620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"片",productId:null,productName:"牛排",productPrice:1053,status:"1"}, {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:2,ordernumber:"5767620180519",phone:null,photoPoster:"product/sanwen/sanwenPoster.jpg",productExplain:"片",productId:null,productName:"三文鱼",productPrice:53,status:"1"}, {addr:"1167888广东省广",now:"2018-05-19 12:05:46",number:1,ordernumber:"3125620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"个",productId:null,productName:"猪蹄",productPrice:124,status:"2"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"瓶",productId:null,productName:"红酒",productPrice:8888,status:"3"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"袋",productId:null,productName:"坚果",productPrice:50,status:"3"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"盒",productId:null,productName:"抽纸",productPrice:12,status:"3"} ]
qq_39191480 2018-05-19
  • 打赏
  • 举报
回复
var data = [ {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:1,ordernumber:"5767620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"片",productId:null,productName:"牛排",productPrice:1053,status:"1"}, {addr:"1167888广东省广",now:"2018-05-19 12:00:47",number:2,ordernumber:"5767620180519",phone:null,photoPoster:"product/sanwen/sanwenPoster.jpg",productExplain:"片",productId:null,productName:"三文鱼",productPrice:53,status:"1"}, {addr:"1167888广东省广",now:"2018-05-19 12:05:46",number:1,ordernumber:"3125620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"个",productId:null,productName:"猪蹄",productPrice:124,status:"2"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"瓶",productId:null,productName:"红酒",productPrice:8888,status:"3"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"袋",productId:null,productName:"坚果",productPrice:50,status:"3"}, {addr:"1167888广东省广",now:"2018-05-19 12:10:22",number:1,ordernumber:"5454620180519",phone:null,photoPoster:"product/niu/niuPoster.jpg",productExplain:"盒",productId:null,productName:"抽纸",productPrice:12,status:"3"} ]
天际的海浪 2018-05-19
  • 打赏
  • 举报
回复
原始json数据发一下(别发图片)

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧