【发布时间】:2018-02-19 16:10:56
【问题描述】:
我正在尝试通过一些 Json 并从每个嵌套数组中获取“city_name”值并将其打印在列表中。问题:如何遍历一个数组并从每个数组中获取第一个元素?
“state”: [
{
“city_name”: “Denver”,
“timezone”: “MST”,
},
{
“city_name”: “Austin”,
“timezone”: “CST”,
}
{
“city_name”: “Atlanta”,
“timezone”: “EST”,
}
],
我尝试过的Javascript:
fetch(‘URL’).then(function(response) {
return response.json();
}).then(function(data) {
console.log(data);
for (x in data.state) {
document.getElementById("cities").innerHTML += data.state.city_name + "<br>";
}
});
回应: 不明确的 不明确的 未定义
这是获取数组中值的正确方法吗?为什么它说未定义? *这只是帮助解释我的问题的示例数据
【问题讨论】:
-
const cityList = data.State.map(element => element.city_name); -
因为您没有名为
"state"的属性。它是"State",它是一个数组,所以你应该使用for ... of而不是for ... in。 -
Pavlo:我尝试了 const cityList = data.State.map(element => element.city_name);但这只是重复了丹佛 3 次。我将它放在 For 循环内部和外部。
-
Derek:首都州是我样本中的错字,我已经更正了。我尝试将其更改为 For "of" 但仍然导致 "undefined"
标签: javascript arrays loops for-loop nested