如何使用 angular 从 Json 对象解析 Json 数组
How to parse the Json array from Json object using angular
在 angular 应用程序中,我调用了 API 并读取了控制台中的 Json 对象。但是在 Json 对象内部有字符串和 array.Now我必须从对象 incosole 解析数组。
我在控制台得到的对象是:
{
"Drone": {
"Droneid": 1001,
"latlong": [
{
"lat": 12.989839,
"lon": 80.198822
},
{
"lat": 13.051832,
"lon": 80.194480
},
{
"lat": 13.038453,
"lon": 80.227442
},
{
"lat": 13.009018,
"lon": 80.242550
},
{
"lat": 12.976903,
"lon": 80.237056
},
{
"lat": 12.956829,
"lon": 80.193107
},
{
"lat": 12.980917,
"lon": 80.150531
},
{
"lat": 13.007680,
"lon": 80.149158
},
{
"lat": 13.043805,
"lon": 80.154651
}
]
}
}
但我必须从对象中解析 latlong 数组。
Dashboard.service.ts
mapping(token){
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'Token ' + token
})
};
//this.http.get(this.url).subscribe(
this.http.get(environment.apiurl +'/api/data/json', httpOptions).subscribe(
(dronesdt:any)=>{
localStorage.setItem("dronesdt",JSON.stringify(dronesdt));
console.log("Drones",JSON.parse(localStorage.getItem("dronesdt")));
}
)
}
那么如何在控制台中获取 latlong 数组。
谁能帮我解决这个问题。
您可以像这样获取 latlong
字段:
dashboard.service.ts
mapping(token){
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'Token ' + token
})
};
// this.http.get(this.url).subscribe(
this.http.get(environment.apiurl +'/api/data/json', httpOptions).subscribe(
(dronesdt:unknown /*Try to avoid any and statically type values as far as possible*/)=>{
localStorage.setItem("dronesdt",JSON.stringify(dronesdt));
console.log("Drones", dronesdt.Drone.latlong);
}
// )
}
不需要 JSON.parse
控制台中的对象,因为您已经在该函数中获取了最新的数据。
在 angular 应用程序中,我调用了 API 并读取了控制台中的 Json 对象。但是在 Json 对象内部有字符串和 array.Now我必须从对象 incosole 解析数组。
我在控制台得到的对象是:
{
"Drone": {
"Droneid": 1001,
"latlong": [
{
"lat": 12.989839,
"lon": 80.198822
},
{
"lat": 13.051832,
"lon": 80.194480
},
{
"lat": 13.038453,
"lon": 80.227442
},
{
"lat": 13.009018,
"lon": 80.242550
},
{
"lat": 12.976903,
"lon": 80.237056
},
{
"lat": 12.956829,
"lon": 80.193107
},
{
"lat": 12.980917,
"lon": 80.150531
},
{
"lat": 13.007680,
"lon": 80.149158
},
{
"lat": 13.043805,
"lon": 80.154651
}
]
}
}
但我必须从对象中解析 latlong 数组。
Dashboard.service.ts
mapping(token){
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'Token ' + token
})
};
//this.http.get(this.url).subscribe(
this.http.get(environment.apiurl +'/api/data/json', httpOptions).subscribe(
(dronesdt:any)=>{
localStorage.setItem("dronesdt",JSON.stringify(dronesdt));
console.log("Drones",JSON.parse(localStorage.getItem("dronesdt")));
}
)
}
那么如何在控制台中获取 latlong 数组。 谁能帮我解决这个问题。
您可以像这样获取 latlong
字段:
dashboard.service.ts
mapping(token){
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'Token ' + token
})
};
// this.http.get(this.url).subscribe(
this.http.get(environment.apiurl +'/api/data/json', httpOptions).subscribe(
(dronesdt:unknown /*Try to avoid any and statically type values as far as possible*/)=>{
localStorage.setItem("dronesdt",JSON.stringify(dronesdt));
console.log("Drones", dronesdt.Drone.latlong);
}
// )
}
不需要 JSON.parse
控制台中的对象,因为您已经在该函数中获取了最新的数据。