从数组中获取对象并推送到新数组[重复]
Posted
技术标签:
【中文标题】从数组中获取对象并推送到新数组[重复]【英文标题】:Get objects from arrays and push to new array [duplicate] 【发布时间】:2020-09-05 07:50:08 【问题描述】:我有一个按钮,它创建一个带有类似对象的数组
[field: field1, operator: operator1, value: 10]
当我再次单击该按钮时,它将再次创建一个新数组,如
[field: field2, operator: operator2, value: 20]
当我尝试将这些推入新数组时,它正在嵌套
[Array(1), Array(1)]
但我希望新数组看起来像
[field: field1, operator: operator1, value: 10, field: field2, operator: operator2, value: 20]
我的代码
public filterChange(state): void
this.filters.push( state.filters );
console.log(this.filters);
每次点击按钮时,“filterChange”都会调用,“state”会给出过滤器数组,生成新的过滤器值。请建议。谢谢。
【问题讨论】:
为什么按钮首先创建具有单个元素的数组?为什么不只是对象? 【参考方案1】:您可以使用扩展语法。
public filterChange(state): void
this.filters.push( ...state.filters );
console.log(this.filters);
【讨论】:
【参考方案2】:尝试使用spread 语法。扩展运算符将从数组中获取一个元素:
this.filters.push( ...state.filters );
console.log(this.filters);
一个例子:
let arr1 = [],
arr2 = [
user_id: 3, project_name: 'Project A'
]
arr1.push(...arr2);
console.log(arr1)
【讨论】:
以上是关于从数组中获取对象并推送到新数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章