javascript - 对复杂数组进行分组
问题描述
我有一个这样的数组:
scripts
[
["scriptNameA", "dateAsString1", number],
["scriptNameB", "dateAsString1", number],
["scriptNameC", "dateAsString2", number],
["scriptNameD", "dateAsString3", number],
["scriptNameE", "dateAsString3", number]
]
我想得到一个按日期分组的数组
scriptsGroupedByDate[
"dateAsString1"[
["scriptNameA", "dateAsString1", number],
["scriptNameB", "dateAsString1", number]
],
"dateAsString2"[
["scriptNameC", "dateAsString2", number]
],
"dateAsString3"[
["scriptNameD", "dateAsString3", number],
["scriptNameE", "dateAsString3", number]
]
]
有没有办法做到这一点 ?谢谢你
解决方案
let number = 0;
let scripts =
[
["scriptNameA", "dateAsString1", number],
["scriptNameB", "dateAsString1", number],
["scriptNameC", "dateAsString2", number],
["scriptNameD", "dateAsString3", number],
["scriptNameE", "dateAsString3", number]
];
var result = scripts.reduce((a, b) => (a[b[1]] ? a[b[1]].push(b) : a[b[1]] = [b], a), {});
console.log(result);
推荐阅读
- html - 轮播内的卡片垂直显示而不是水平显示
- excel - 已定义和设置变量时 VBA 中的错误 91
- tensorflow-serving - tensorflow serving enable batch, { "error": "第二个输入必须是标量,但它的形状为 [1] }
- progressive-web-apps - indexedDB同时创建多个ObjectStore
- apache-spark - What are the Spark transformations that cause a shuffle on Dataframes?
- javascript - 当一个未处理的被拒绝的承诺抛出它的错误
- python - Python pandas multiIndex 检查索引值
- r - 在 lappy 函数中查找意外删除的原因
- javascript - Javascript - axios 请求后脚本不起作用
- regex - 如何使用 regex crate 匹配整个 INI 部分?