【发布时间】:2014-05-09 12:23:24
【问题描述】:
我有一个如下所示的 JavaScript 数组:
var arr = ["[Dim1].[Mem1].&[1]",
"[Dim2].[Mem1].&[2]",
"[Dim1].[Mem1].&[5]",
"[Dim2].[Mem1].&[77]",
"[Dim3].[Mem1].&[1]"
]
我想要这种格式的输出:
{
[Dim1].[Mem1].&[1], [Dim1].[Mem1].&[5]
},
{
[Dim2].[Mem1].&[2], [Dim2].[Mem1].&[77]
},
{
[Dim3].[Mem1].&[1]"]
}
想法是根据'.&'拆分每个值,然后按结果[0]分组。
我可以这样做:
- 遍历数组中的所有项目,然后用 .& 拆分它们
- 根据 [dim].[mem] 组合创建另一个列表。在我们的例子中,列表将包含 [Dim3].[Mem1]、[Dim1].[Mem1]、[Dim2].[Mem1]。
- 现在有两个循环 - 一个用于唯一列表中的每个项目,一个用于原始列表中的每个项目并检查该项目是否是原始列表包含唯一列表中的当前项目,然后形成字符串。
如何使用“lodash”或任何其他基于 JS 的库来减少代码并使方法紧凑?
【问题讨论】:
-
您是否尝试过使用任何其他库?您能与我们分享您的尝试吗?
标签: javascript jquery regex handlebars.js lodash