You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求可迭代生成指定分组格式数组的JavaScript代码

按分类分组字符串的迭代实现方案

需求概述

  • 输入字符串:HAMILTON.Angelica, WICKED.Glinda, HAMILTON.Eliza, HAMILTON.AndPeggy, WICKED.Elphaba
  • 预期输出:按点号前缀分类,生成 HAMILTON=[{Angelica, Eliza, AndPeggy}]、WICKED=[{Glinda, Elphaba}] 形式的分组结构
  • 核心要求:迭代处理每个条目,动态创建分类数组并添加对应子项

JavaScript 实现代码

// 原始输入字符串
const input = "HAMILTON.Angelica, WICKED.Glinda, HAMILTON.Eliza, HAMILTON.AndPeggy, WICKED.Elphaba";

// 用于存储分组结果的对象
const groupedData = {};

// 拆分并遍历每个条目
input.split(", ").forEach(entry => {
  // 拆分分类名和子项
  const [category, item] = entry.split(".");
  // 若分类不存在则初始化空数组
  if (!groupedData[category]) {
    groupedData[category] = [];
  }
  // 将子项推入对应分类数组
  groupedData[category].push(item);
});

// 按要求格式输出结果
Object.entries(groupedData).forEach(([cat, items]) => {
  console.log(`${cat}=[{${items.join(", ")}}]`);
});

逻辑拆解

  1. 拆分输入:用, 将原始字符串分割为独立的分类.子项条目数组
  2. 遍历处理:逐个处理每个条目,通过.拆分出分类名和子项内容
  3. 动态建组:检查目标对象中是否存在该分类数组,不存在则创建空数组
  4. 添加子项:将当前子项添加到对应分类的数组中
  5. 格式输出:遍历分组结果,按指定格式打印每个分类及其子项列表

内容的提问来源于stack exchange,提问作者leenmanwelmeerunduh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 10:45:34