javascript - 使用 typescript 批量删除数组

标签 javascript arrays angular typescript

我想使用 typescript 从数组中批量删除。

我是通过使用for循环来完成的。

this.versions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
this.selectedVersions = [1, 2, 3, 4, 5, 6];
for (let i = 0; i < this.selectedVersions.length; i++) {
  this.versions = this.removeObjectFromArray(this.versions, this.selectedVersions[i]);
}


//removing a object from array
removeObjectFromArray(listOfdata: any, data: any) {
  let index = listOfdata.findIndex(function (o) {
    return o === data;
  })
  listOfdata.splice(index, 1);
  return listOfdata;
}

但是我不喜欢使用for循环。所以让我知道如何使用 typescript 在数组中进行批量删除。

最佳答案

您可以只使用数组过滤器:

var versions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var selectedVersions = [1, 2, 3, 4, 5, 6];

versions = versions.filter(el => !selectedVersions.includes(el));
console.log(versions);

关于javascript - 使用 typescript 批量删除数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46913059/

相关文章:

dynamic - 我如何在 Angular 2 中使用 "SystemJsNgModuleLoader"将动态模块导入应用程序?

javascript - 如何在表单面板中添加网格面板?

java - 推断类型不符合声明的边界

javascript - 如何对包含数字的数组进行排序?

c - 以间隔返回数组元素

angular - 如何将字符串传递给 Angular 2 (click) 函数?

c# - 上传文件导致错误 "net::ERR_UPLOAD_FILE_CHANGED"

javascript - 在 flex 中禁用脚本最大执行时间?

javascript - 上下文 API 中的 React useState 值始终使用初始值而不是更新值

javascript - JQuery 隐藏 ajax 发布结果上的表行