我有类似这样的数据(有多个国家/地区)
[
{country:"Country1", GDP : 12345, GDPgrowth : {year1:123, year2:234, year3:345}},
{country:"Country2", GDP : 12345, GDPgrowth : {year1:123, year2:234, year3:345}}
]
我可以使用forEach
并遍历“行”来访问每个国家/地区的数据。
但是,我不知道如何访问GDPgrowth
中的各个值。我试图做一个嵌套的forEach
,但是由于它不是一个函数而引发了错误,我认为这是因为GDPgrowth
中的数据不是数组。我还尝试了通用的for循环方法,但似乎无法实现我想要的功能。
推荐使用什么方法获取这些值(理想情况下不必每次都按名称year1
,year2
,year3
进行选择)
答案 0 :(得分:1)
一种解决方案是使用Object.values()获取包含对象值的数组,而您可以使用forEach()
遍历它们。
const input = [
{country: "Country1", GDP: 12345, GDPgrowth: {year1:123, year2:234, year3:345}},
{country:"Country2", GDP : 12345, GDPgrowth : {year1:123, year2:234, year3:345}}
];
input.forEach(x =>
{
console.log("country: " + x.country);
Object.values(x.GDPgrowth).forEach(y => console.log("year: " + y))
});
此外,我建议您也阅读有关Object.keys()和Object.entries()的信息。