我正在尝试从复杂的API结构中获取数据。我如何从以下对象和数组中获取所有图像:
Name = gameObject.name;
我知道我可以像这样获取图片网址:
const x = { cars: [
{ types:
{
name: "VW",
image: [{ url: "http://www.lkjl.com" }]
}
},
{...},
{...}
]};
但是如何打印出所有图片网址?
x.cars[0].types.image[0].url
我是否需要在地图功能中添加另一张地图?
答案 0 :(得分:1)
您可以使用Array#reduce
映射url
属性。
const
x = { cars: [{ types: { name: "VW", image: [{ url: "http://www.lkjl.com" },{ url: "http://www.alkjl.com" }] } }, { types: { name: "Tata", image: [{ url: "http://www.lskal.com" },{ url: "http://www.lkfjl.com" }] } }] },
images = x.cars.reduce((r, item) => r.concat(item.types.image.map(i => i.url)), []);
console.log(images);
答案 1 :(得分:0)
我认为你错过了types
:
x.cars.map(item => {
return(
item.types.image[0].url;
);
});
答案 2 :(得分:0)
我认为您错过了访问地图功能中的“类型”对象 它应该是这样的:
x.cars.map(item => {
return(
item.types.image[0].url; //this should work for you
);
});
答案 3 :(得分:0)
在cars
数组中,image
对象中包含types
数组,因此您必须遍历两个数组以打印出所有图像。
请参阅下面的代码。
const x = { cars: [
{ types:
{
name: "VW",
image: [{ url: "http://www.lkjl.com" }]
}
},
{ types:
{
name: "VW",
image: [{ url: "http://www.lkjl12.com" }]
}
}
]};
x.cars.forEach(car => {
car.types.image.forEach( i => console.log(i.url));
})
答案 4 :(得分:0)
x.cars.map(item => item.types.image [0] .url)
答案 5 :(得分:-1)
x.cars.map((item, key) => {
return(
item.types.image[0].url;
//you're missing 'types'
);
});
我希望它可以帮到你。