【发布时间】:2016-07-07 15:36:58
【问题描述】:
给这个配置对象成员(更大对象的一部分):
stations: [
{
id: "RH",
positions: ['RH2,', 'RH16', 'RH14']
},
{
id: "WT",
positions: ['WT10,', 'WT11', 'WT12', 'WT13', 'WT14', 'WT18']
},
{
id: 1,
positions: ['AO,', 'FF', 'PFF']
},
{
id: 2,
positions: ['AO,', 'FF', 'PFF']
},
{
id: 3,
positions: ['AO,', 'FF', 'PFF']
},
{
id: 4,
positions: ['AO,', 'FF', 'PFF']
}
],
我需要遍历它并为站数组中的每个对象生成这个对象:
var myObj = {
"station": 1,
"slots": [
{
"position": "AO"
"name": [name]
},
{
"position": "FF"
"name": [name]
},
{
"position": "PFF"
"name": [name]
},
]
}
我将单独填写名称,所以我现在不担心这个值。
我一直在尝试用 lodash _.forEach() 来做这件事,但我感觉我并没有尽可能有效地使用它。我正在尝试做(并且失败)是在另一个内部使用 _.forEach() ,并且我无法从内部循环访问外部循环中的变量:
this.shiftTables = [];
_.forEach(stations, function(station) {
var table = {
"station": station.id,
"slots": []
};
//Iterate over station.positions
_.forEach(station.positions, function(position) {
var slot = {
"position": position,
"name": "Name"
};
});
vm.shiftTables.push(table);
});
(这只是为了展示我正在尝试做的事情 - 不工作的代码)。
那么我怎样才能完成我想做的事情呢?
谢谢。
【问题讨论】:
标签: javascript foreach configuration lodash