我正在尝试直接访问JSON对象属性并记录它,这是我的函数:
loadProcesses(filter?){
this._postService.getAllProcess(filter)
.subscribe(
res=> {
this.processListe = res;
// console.log(this.processListe.)
}
,null,
() =>{
console.log("get processes liste" + filter)
});
所以this.processListe包含一个JSON对象,我的JSON格式是这样的:
{"Person": {
"id": "A256",
"name": "GET",
"status": "active",
"description": "hardworking, openminded",
...
所以它将包含完全相同的东西,例如,如果我只想在控制台日志上打印标签,我该怎么办?
答案 0 :(得分:6)
你在寻找这样的东西:
function parseObject(obj)
{
for(var key in obj)
{
console.log("key: " + key + ", value: " + obj[key])
if(obj[key] instanceof Object)
{
parseObject(obj[key]);
}
}
}

只需在subscribe方法中调用parseObject(res)。
答案 1 :(得分:2)
解析它并访问字段。
var obj = JSON.parse(filter);
obj.Person.id;
//etc
答案 2 :(得分:0)
在.subscribe中解析它:
res => this.processListe = res.json();
答案 3 :(得分:0)
更好的解决方案是使用任何方式声明您的回复:
loadProcesses(filter?){
this._postService.getAllProcess(filter)
.subscribe(
(res: any)=> {
this.processListe = res;
// console.log(this.processListe.)
}
,null,
() =>{
console.log("get processes liste" + filter)
});
这样您就可以访问回复中的任何地址