所以我有http.get调用工作,可以正确地从请求中获取数据:
this.http.get('https://data.cityofnewyork.us/resource/xx67-kt59.json').subscribe(data => {
// Read the result field from the JSON response.
console.log(data);
for (let x in data) {
console.log(x);
}
});
console.log(data)行成功运行,它会从请求中打印出一系列项目。
我遇到的麻烦是当我尝试迭代JSON数组中的每个单独项时。
for (let x in data) {
console.log(x);
}
只需打印出JSON对象中项目的索引/编号即可。即使我尝试x [" prop name"],它仍然会失败。
即使以下情况也不起作用:
console.log(JSON.stringify(x));
我的目标是最终将这些映射到类I,并使用该数据定义和填充数组变量。
我是如何愚蠢地引用每个项目的JSON属性?
答案 0 :(得分:2)
如果要迭代Array
,则应使用for of
构造。
for (let x of data) {
// `x` is an item from the array
}
for in
构造迭代对象的键。在你的情况下,这些是数组索引。
答案 1 :(得分:0)
尝试使用for (let x of data)
代替for (let x in data)
。