下面的代码接受两个数组(fields和photos),获取它们的字段的名称和值,并将它们添加到一个新数组(panoramas)中:
函数:
const panoramas = this.uploads.finished.map(photos => {
let panorama = {}
fields.forEach(field => { panorama[field.name] = field.value })
photos.forEach(photo => { panorama[photo.name] = photo.value })
return panorama
})输入:
fields
[{
name: "name"
type: "hidden"
value: ""
}, {
name: "description"
type: "hidden"
value: ""
}, {
name: "photo"
type: "file"
value: ""
}, {
name: "photo2"
type: "file"
value: ""
}]photos
[{
name: "photo"
value: "1.png"
}, {
name: "photo2"
value: "2.jpg"
}]输出:
panoramas:
[{
name: "name"
type: "hidden"
value: ""
}, {
name: "description"
type: "hidden"
value: ""
}, {
name: "photo"
type: "file"
value: "1.png"
}, {
name: "photo2"
type: "file"
value: "2.png"
}]如您所见,我在map中使用两个map循环。有没有办法只使用一个forEach
发布于 2016-12-06 01:55:35
fields.concat(photos).forEach(obj => { panorama[obj.name] = obj.value });https://stackoverflow.com/questions/40986541
复制相似问题