【发布时间】:2017-01-02 12:21:27
【问题描述】:
我有一个如下所示的 Javascript 对象:
const obj = [
{
name: "Ali",
userID: 123,
type: "photo",
photo: {
"title": "Me",
"src": "/cool.jpg",
}
},
{
name: "Ali",
userID: 123,
type: "photo",
photo: {
"title": "Photo",
"src": "/photo.jpg"
}
},
{
name: "John",
userID: 1234,
type: "photo",
photo: {
"title": "Photo",
"src": "/photo.jpg"
}
},
{
name: "John",
userID: 1234,
type: "photo",
photo: {
"title": "Photo",
"src": "/photo.jpg"
}
}];
我需要遍历它并返回一个如下所示的数组:
const obj = [
{
name: "Ali",
userID: 123,
type: "photo",
photos: [
{
title: "Me",
src: "/cool.jpg"
},
{
title: "Photo",
src: "/photo.jpg"
}
]
},
{
name: "John",
userID: 1234,
type: "photo",
photos: [
{
"title": "Me",
"src": "photo.jpg"
},
{
title: "Photo",
src: "/photo.jpg"
}
]
}
]
请注意,第一个对象可以包含超过 100 次具有相同名称的对象,我只需要一次并且在他所有照片的数组中。我该怎么做?我应该使用什么类型的循环?谢谢...
【问题讨论】:
-
@RokoC.Buljan 我试图实现的数组与此完全不同
-
是的……误读了。不完全但接近。您实际上想将用户的
photo合并为多个photos(可以摘自here)。你试过什么?你提出的问题表明你没有付出任何努力。您是否已经尝试过针对特定问题的任何代码?或者您正在尝试找人为您编写代码? -
我有一些代码,但它并没有完全符合我的要求,我需要按用户 ID 堆叠这些照片,我将添加我的代码
-
想要一个新的数据数组,还是修改原来的
obj? -
@Xotic750 对我都有好处
标签: javascript arrays loops ecmascript-6