当前位置: 首页 > 知识库问答 >
问题:

如何使用typescript(Angular2)[duplicate]循环访问JSON对象

房学文
2023-03-14

我是Angular2的新手,我正在尝试循环一个JSON对象,这个对象是我从GET请求返回的,但无法完成它。

我的JSON对象:

{
    Results: [{
        Time: "2017-02-11T08:15:01.000+00:00",
        Id: "data-mopdsjkajskda",
        AuthorId: "58fSDNJD"
    }, {
        Time: "2017-03-11T06:23:34.000+00:00",
        Id: "data-2371212hjb1",
        AuthorId: "43555HHHJ"
    }, {
        Time: "2017-04-11T07:05:11.000+00:00",
        Id: "data-kjskdha22112",
        AuthorId: "XDSJKJSDH"
    }]
}

我有棱角的剧本的一部分:

interface res {
    Time: string;
    Id: string;
    AuthorId: string;
}
export class AppComponent {
    results: res;
    constructor(private _httpservice: HTTPService) {}
    this._httpservice.getQuery().subscribe(
        data => {
            this.results = data.Results
        },
        error => console.log(error),
        () => console.log('Done')
    );
}

我确实把数据拿回来了--这太好了。但是,我想将ID推入一个数组。在Javascript中,我会这样做:

var ids = [];

for (i = 0; i < data.Results.length; i++) {
    ids.push(data.Results[i].Id)
}

推后阵:

ids = ['data-mopdsjkajskda', 'data-2371212hjb1', 'data-kjskdha22112'];

我正在苦苦寻找一种方法来用Angular2实现同样的结果。如有任何帮助,我们将不胜感激!

共有1个答案

徐飞尘
2023-03-14

假设GET请求中的json对象与上面发布的对象类似,那么只需执行以下操作:

let list: string[] = [];

json.Results.forEach(element => {
    list.push(element.Id);
});

还是我错过了什么阻止你这样做的东西?

 类似资料:
  • 我是json的新手,所以我从ajax调用中得到一个json响应 现在,我只能循环json对象 这是我的json 有人能帮忙吗

  • 我需要根据数据库查询的结果集创建可变数量的JSON对象和JSON数组。JSON格式看起来与以下用于谷歌图表的格式非常相似。 我的问题是,我觉得这应该是一个简单的答案,如何在for循环中创建多个具有唯一名称的JSON对象?我的尝试:

  • 我正在尝试迭代一个JSON对象。 对于下面的代码: 在第一个ng-repeat中:< br > < code > { { user . type } } outputs ' Parent '(如预期一样),< br > < code > { { user . options } } outputs '[{ " option 1 ":" 11 qwert "," option2":"22QWERT"

  • 我试图从以下JSON对象数据中检索信息。json: 因此,我想循环这个JSON对象,以显示所有可用项及其相应的标题、说明和附件链接。 我知道我可以分别访问它们: 通常我会对数据进行for循环和循环。项目[i]。但是,由于这是一个react和一个对象,而不是一个数组,因此它的工作方式不同。 我当前的代码: 现在它只显示对象的第一个条目(因为它有const项目=data.items[0])我如何循环d