javascript - 如何在数组内部循环并分配给变量

标签 javascript angularjs arrays function

在我的 angular2 应用程序中,其中包含复选框;复选框键存储在名为“ticketselected”的数组中,选定的复选框键存储在“selectedArray”中。我想将这些键一一分配给一个变量并使用该变量。我需要拼接一个数组。我该如何实现这个?

我所做的是:

组件.ts

this.ticketSelected
    .map((entry, key) => {
         if (entry == true) {
             selectedArray.push(key);
            }
     })

 var index =   // This should be key
 allTickets.splice(index, 1);

selectedArray”包含所有选定的键。

我应该如何实现这个?

编辑

 deleteRequest
      .subscribe((data: any) => { // this data contain deleted data ie like {count:1}
                this.ticketSelected
                     .map((entry, key) => {
                      if (entry === true) {
                                selectedArray.push(key);
                       }
                 })

                 selectedArray.forEach((item) => {
                        var index = allTickets.indexOf(item);
                        console.log("index", index);
                        if (index != -1){
                            allTickets.splice(index, 1);
                    }
                    });
                })

最佳答案

您应该使用indexOf方法。

allTickets=allTickets.filter(function(item){
     return selectedArray.indexOf(item.id)==-1;
});

另一个解决方案是使用filter方法,该方法接受callback函数,应用于数组中的每个项目。

了解更多 here.

关于javascript - 如何在数组内部循环并分配给变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43318706/

相关文章:

javascript - 如何在更改事件上借助 jquery 调整窗口大小?

javascript - 使用js对html onclick发出rest请求

css - 颜色代码未在同一行对齐

javascript - 如何显示没有索引的数组?

javascript - "push"- 数组返回它的长度

javascript - 如何在使用 PHP 和 JS 的自动完成表单中不允许不在数据库中的值

javascript - 为什么我的状态未定义,即使我默认将其设置为空数组?

javascript - Jquery has/find/contains 不工作

angularjs - ionic : Preserve $scope when navigate to another view

c++ - 为什么我不能在 struct 中初始化 char 数组