javascript - typescript 过滤方法

标签 javascript typescript

在我的 Angular 2 应用程序中,我声明了 2 个对象数组。

users: User[];
selectedUsers: User[];

现在我正在使用 filter() 方法返回一个数组,其中包含检查属性为 true 的对象。

this.selectedUsers = this.users.filter(user => user.isChecked == true);

问题是两个数组的元素引用相同。 那么有没有一种方法可以过滤掉对象并返回新对象数组(新引用)?

最佳答案

您可以随时使用 Array.prototype.map创建一个新数组和Object.assign创建一个新对象:

this.users.filter(user => user.isChecked).map(u => Object.assign({},u));

关于javascript - typescript 过滤方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41487404/

相关文章:

javascript - 在同一模块中多次声明 AngularJS 服务

javascript - 检查所有 Ajax 请求何时完成 - 纯 JavaScript

javascript - Vue.js 模型绑定(bind)到 jquery 输入

javascript - 如何用另一个 div 更改一个 div,onmouseover?

javascript - 将 @Input() 对象属性分配给组件

angular - toHaveBeenCalled() 返回未定义

Angular 2嵌套路由解析执行

typescript - Angular2 异步管道在 ngfor 中不起作用

javascript - Express 和 Typescript - Error.stack 和 Error.status 属性不存在

javascript - 如果不是返回值而是抛出错误,TypeScript 就会给出错误