- 23
- 0
前提
做前后端分离,现有如下数组按照updated_at倒序,根据year做第一级,month做第二级,拼装成多维数组,原先是在php后端进行排序处理,但是通过json传递到前端变成无序,现在想通过js,该如何处理?
[
{
"id": 15,
"year": "2018",
"month": "03",
"updated_at": "2018-03-01 15:09:59"
},
{
"id": 14,
"year": "2018",
"month": "02",
"updated_at": "2018-02-24 21:39:53"
},
{
"id": 13,
"year": "2017",
"month": "12",
"updated_at": "2017-12-02 16:45:03"
},
{
"id": 5,
"year": "2017",
"month": "11",
"updated_at": "2017-11-10 17:32:11"
},
{
"id": 7,
"year": "2017",
"month": "11",
"updated_at": "2017-11-07 17:26:09"
},
{
"id": 9,
"year": "2017",
"month": "10",
"updated_at": "2017-10-23 19:08:12"
},
{
"id": 8,
"year": "2017",
"month": "10",
"updated_at": "2017-10-20 20:13:07"
},
{
"id": 10,
"year": "2017",
"month": "09",
"updated_at": "2017-09-23 19:05:52"
},
{
"id": 4,
"year": "2017",
"month": "09",
"updated_at": "2017-09-18 17:32:49"
},
{
"id": 3,
"year": "2017",
"month": "07",
"updated_at": "2017-07-22 17:34:20"
},
{
"id": 6,
"year": "2017",
"month": "07",
"updated_at": "2017-07-02 17:28:49"
},
{
"id": 12,
"year": "2017",
"month": "06",
"updated_at": "2017-06-15 15:31:18"
},
{
"id": 11,
"year": "2017",
"month": "06",
"updated_at": "2017-06-11 15:32:16"
}
]
期望所得数据如下
"2018": {
"03": [{
"id": 15,
"updated_at": "2018-03-01"
}],
"02": [{
"id": 14,
"updated_at": "2018-02-24"
}]
},
"2017": {
"12": [{
"id": 13,
"updated_at": "2017-12-02"
}],
"11": [{
"id": 5,
"updated_at": "2017-11-10"
}, {
"id": 7,
"updated_at": "2017-11-07"
}],
"10": [{
"id": 9,
"updated_at": "2017-10-23"
}, {
"id": 8,
"updated_at": "2017-10-20"
}],
"09": [{
"id": 10,
"updated_at": "2017-09-23"
}, {
"id": 4,
"updated_at": "2017-09-18"
}],
"07": [{
"id": 3,
"updated_at": "2017-07-22"
}, {
"id": 6,
"updated_at": "2017-07-02"
}],
"06": [{
"id": 12,
"updated_at": "2017-06-15"
}, {
"id": 11,
"updated_at": "2017-06-11"
}]
}
} 0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
╭丅輩孒゛续約つ 普通会员 1楼
在JavaScript中,你可以使用Array.from()方法将数组解析成多维数组。Array.from()方法接受一个或多个数组作为参数,并返回一个新的数组,其中包含所有这些数组的元素。
以下是一个例子:
```javascript let arr1 = [1, 2, 3]; let arr2 = [4, 5, 6]; let arr3 = [7, 8, 9];
let multiArray = Array.from({length: 3}, (v, k) => [arr1[k], arr2[k], arr3[k]]); console.log(multiArray); // 输出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]] ```
在这个例子中,我们首先创建了三个数组arr1、arr2和arr3。然后,我们使用Array.from()方法将这些数组的元素重新组合成一个新的多维数组。最后,我们打印出这个新的多维数组。
注意,Array.from()方法不会修改原始的数组,而是返回一个新的数组。如果你想要修改原始的数组,你可以直接使用数组的push()方法。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
