【问题标题】:Typescript array foreach with push function (Angular)带有推送功能的打字稿数组foreach(Angular)
【发布时间】:2021-03-29 18:17:25
【问题描述】:

我有数组:

data
    Array
    (
    [0] => Array
        (
            [name0] => J
            [name1] => L
            [name2] => C
        )

    [1] => Array
        (
            [data0] => 3,1,3
            [data1] => 5,3,2
            [Nu0] => 3,0,0
            [Nu1] => 1,1,1
        )

)

我需要将数据推送到其他数组

this.datas.push({'name':'A','data':(data[1].data0).'color':'#00000'}); 
this.datas.push({'name':'C','data':(data[1].Nu0).'color':'#00000'}); 
this.datas.push({'name':'B','data':(data[1].data1).'color':'#FFFFF'}); 
this.datas.push({'name':'D','data':(data[1].Nu1).'color':'#FFFFF'}); 
this.namedatas.push(data[0].name0);
this.namedatas.push(data[0].name1);

如何使用循环功能来做到这一点?如果我有更多数据怎么办?

【问题讨论】:

  • 1.将数据数组共享为有效的 json 2。您要推送到的另一个数组是什么? 3. 预期的输出是什么。

标签: javascript arrays angular typescript


【解决方案1】:

在您的情况下,我建议您使用地图或过滤功能:

metadas = datas.map((el) => {
    return el.name;
});

在这种情况下,在元数据数组中,您将所有名称都包含在数据数组中。

【讨论】:

    【解决方案2】:

    在这个例子中你可以像下面这样轻松地做,我们将把数据从第一个数组items推送到第二个数组newItems

    就像这是你的第一个数组items:

    const items = ['item1', 'item2', 'item3']
    

    这是你的第二个数组newItems

    const newItems = []
    

    这是您的解决方案:

    items.forEach(function(item){
      newItems.push(item)
    })
    

    【讨论】:

    • 如果我需要 data0 然后 null0 然后 data1 然后 null1 在新数组中,我们如何循环来做到这一点?
    • 你有做like patten,loop inside loop,就是子数组循环。
    猜你喜欢
    • 2023-03-09
    • 2017-10-07
    • 2019-04-10
    • 2021-01-05
    • 2017-11-28
    • 2017-08-17
    • 2017-03-06
    • 2020-03-28
    • 2017-12-18
    相关资源
    最近更新 更多