【发布时间】:2016-03-17 16:00:52
【问题描述】:
我需要能够规范化 javascript 对象或将其展平,我希望能够用 lodash 做一些事情,但我不知所措。我尝试编写自己的转换器,但它似乎过于复杂,而且我认为 lodash 可以做这样的事情。
我正在放置我拥有的原始数组,它有 3 个带有子数组的项目。 (见下文)
这是我所期望的(创建我的新对象),因此所有内容都被展平并添加到“名称”中(请参见下面的 testProduct1 和 testProduct2),如果没有可用的颜色、位置,那么名称就是原始名称(请参阅下面的 testProduct3)。
{
name: ‘testProduct1 RED NewYork’
},
{
name: ‘testProduct1 RED London’
},
{
name: ‘testProduct1 YELLOW NewYork’
},
{
name: ‘testProduct1 YELLOW London’
},
{
name: ‘testProduct2 WHITE NewYork’
},
{
name: ‘testProduct2 WHITE London’
},
{
name: ‘testProduct3’
}
这里是原始数组的例子
{
name: ‘testProduct1’,
colors: [
‘RED’,
‘YELLOW’
],
locations: [
‘New York’,
‘London’
]
},
{
name: ‘testProduct2’,
colors: [
‘WHITE’
],
locations: [
‘New York’,
‘London’
]
},
{
name: ‘testProduct3’,
}
【问题讨论】:
-
只是出于好奇,这不是de规范化吗?
-
弯引号不能很好地工作。
标签: javascript lodash