json - 如何迭代对象而不是数组
问题描述
我想从此网址http://mindicador.cl/api检索 json 数据。但具体来说,我想检索所有对象,如“uf”、“ivp”等,然后将它们显示在表格或列表中。不幸的是,没有数组格式,所以如何迭代那里?
{
"version": "1.5.0",
"autor": "mindicador.cl",
"fecha": "2018-10-24T17:00:00.000Z",
"uf": {
"codigo": "uf",
"nombre": "Unidad de fomento (UF)",
"unidad_medida": "Pesos",
"fecha": "2018-10-24T04:00:00.000Z",
"valor": 27413.56
},
"ivp": {
"codigo": "ivp",
"nombre": "Indice de valor promedio (IVP)",
"unidad_medida": "Pesos",
"fecha": "2018-10-24T04:00:00.000Z",
"valor": 28523.73
}
}
我想遍历所有对象,即“uf”、“ivp”等。我该怎么做?它不是一个数组,所以我猜我不能使用 map。
这是我的服务方法:
search(): Observable<Object> {
const queryUrl = this.apiUrl;
return this.http.get(queryUrl);
}
解决方案
您应该解析您的 HTTP GET 返回的 JSON 对象并将其视为一个对象,以便您可以访问 JSON 对象的每个成员。
this.search().subscribe( data => {
let jsonObject: any = JSON.parse(data);
console.log(jsonObject);
// parse through jsonObject members
});
推荐阅读
- android - 使用 gradle 7.0.0 与 Android 中的华为 HMS 插件冲突
- c++ - IntelliSenseMode:gcc-x64 与 clang-x64?
- windows - Windows 资源管理器排序文件
- tensorflow - 尝试在 tensorflow 中导入和格式化我自己的数据集时出错
- flutter - 不能在 int time 之前使用 Cupertino timepicker
- oracle - Delphi - Oracle RowID 被 dbGO/ADO 忽略
- dictionary - Tesseract OCR 添加自定义字典
- fortran - 如何使用 MPI 更改 Fortran 中的默认精度?
- java - 井字游戏 10*10 棋盘 - 寻找赢家
- r - R stat_function 中的置信区间