javascript - 如何从每个类别的 Json 数组中过滤和发送数据?
问题描述
假设我有:
{
"cmds": [
{
"name": "ban",
"category": "Moderation"
},
{
"name": "meme",
"category": "Fun"
},
{
"name": "joke",
"category": "Fun"
}
]
}
我将如何过滤这些命令并发送:格式: 类别名称 命令
例如: 有趣 的模因,笑话
审核 禁令
(在 Node.JS 中)
解决方案
使用forEach
和构建一个对象。当类别的相同键然后聚合值(名称)
const process = (arr) => {
const result = {};
arr.forEach(({ name, category }) => (result[category] ??= []).push(name));
return result;
};
const data = {
cmds: [
{
name: "ban",
category: "Moderation",
},
{
name: "meme",
category: "Fun",
},
{
name: "joke",
category: "Fun",
},
],
};
console.log(process(data.cmds))
推荐阅读
- haskell - 每个 monad 都是一个应用函子——泛化到其他类别
- javascript - 如何使用 WebVR 和 A-Frame 跟踪控制器移动事件?
- javascript - Vue.js 2 替代使用键作为 JSON.stringify(obj) 在从 xhr 回调更改 obj 时重新渲染子组件
- c# - 在 SeriesCollection 中找不到名为 Series1 的图表元素
- angular-material - mat-table - 如何更新列宽
- python - Django为映射的URL返回页面未找到
- java - PDFBox - 可访问的 PDF - 如何根据可访问性指南检查 PDF 标签是否具有属性
- python - 使用 Python 内联修改 Hl7 消息。
- karate - 空手道 API:在附加的 json 响应中如何动态更新 json 属性数量
- spring-boot - Docker 必须构建 spring 应用程序然后运行它