Javascript &引用;“未定义”;属性,当尝试读取对象';s属性在订阅之外的角度

Javascript &引用;“未定义”;属性,当尝试读取对象';s属性在订阅之外的角度,javascript,angular,typescript,Javascript,Angular,Typescript,我在angular方面是新手,正在从事spring+angular项目,我有两门课叫问答 问题1.ts export class Questions { private questionDescription: string; private id: string; private answers: Answers[] = []; //吸气剂二传手 答案 export class Answers { private answerDescription: st

我在angular方面是新手,正在从事spring+angular项目,我有两门课叫问答

问题1.ts

export class Questions {

    private questionDescription: string;
    private id: string;
    private answers: Answers[] = [];
//吸气剂二传手

答案

export class Answers {

    private answerDescription: string;
    private isVisible: boolean;
    private id: string;
    private voteCounter: number;
//吸气剂二传手

在我的component.ts中,我从webservice获取数据。这是我的服务

base_url: string = "http://localhost:8080";

  constructor(private http: HttpClient) { }

getQuestion(id: string): Observable<HttpResponse<Questions>> {
    return this.http.get<Questions>(this.base_url + "/question" + "/" + id, { observe: 'response' });
  }
恩戈尼尼特(){

}

在“this.answers=this.question.\u answers”行之后,我在我的component.html中与[ngModel]一起使用“answers”数组,它可以工作,但我无法读取subscribe方法之外的answer数组的属性值,我有一个按钮,这个按钮在单击时调用“results()”函数。我需要在读取对象属性后执行一些计算,但我无法读取。下面的代码在控制台中打印“未定义”

 results() {

    console.log(this.answers[0]._answerDescription); // prints undefined

  }
当我像这样改变方法时

results() {

    console.log(this.answers); // prints the array in console

 }

我怎样才能做到这一点

在你的课堂上展示答案的格式,有答案描述,但你想得到答案描述。这可能是问题所在,但如果你能展示你的数组,那会很有帮助。@Natixco是私有属性,这就是我调用_answerDescription方法的原因。@Mamta这是“console.log(this.answers)”之后的结果<代码>0:{id:“523046f9-5eb3-4b52-9529-f74fe7d339d8”,应答描述:“1”,语音计数器:1,可见:假}1:{id:“5fdd6645-3bba-46dc-88d6-3e7d994c51a1”,应答描述:“242”,语音计数器:1,可见:假}2:{id:“1e78716d-82c7-4ed1-88ec-210f3e959cb1”,应答描述:“22”,语音计数器:2,可见:假}那么您是否尝试不使用下划线?因为我在JSON里看不到一个。。。
 results() {

    console.log(this.answers[0]._answerDescription); // prints undefined

  }
results() {

    console.log(this.answers); // prints the array in console

 }