Javascript 在数组中推送对象创建另一个数组
我有这个阵列:Javascript 在数组中推送对象创建另一个数组,javascript,Javascript,我有这个阵列: var arr = this.products.find(x => x.id == 3); 我尝试在这个数组中推送一个对象,如下所示: arr.push({ id: "5", name: "foo3" }); 问题是我得到了一个包含两个数组的数组 注意:this.products在类的原型中定义,并包含一个对象数组 console.log(arr): [Array(4)] 0: Array(4) 0: {id: "1", name: "test"} 1: {id: "
var arr = this.products.find(x => x.id == 3);
我尝试在这个数组中推送一个对象,如下所示:
arr.push({ id: "5", name: "foo3" });
问题是我得到了一个包含两个数组的数组
注意:this.products在类的原型中定义,并包含一个对象数组
console.log(arr):
[Array(4)]
0: Array(4)
0: {id: "1", name: "test"}
1: {id: "2", name: "foo"}
2: {id: "3", name: "foo2"}
length: 3
__proto__: Array(0)
length: 1
__proto__: Array(0)
让arr=[
{id:“1”,选项:{bound_id:“2”},
{id:“2”,选项:{bound_id:“12”},
{id:“12”,选项:{bound_id:“2”}
]
arr.push({id:“5”,选项:{bound_id:“4”})
console.log(arr)
首先,find
将返回找到的满足作为
其次,对象没有push
功能
正如您在下面的代码片段中看到的,您的代码不起作用,但我们可能知道您在尝试什么
this.products=[{
id:“1”,
选项:{
绑定标识:“5”
}
},
{
id:“2”,
选项:{
绑定标识:“8”
}
},
{
id:“3”,
选项:{
绑定标识:“1”
}
},
{
id:“4”,
选项:{
绑定标识:“1”
}
}
]
var arr=this.products.find(x=>x.id==3);
log(“这不是一个数组”,arr)
//这不是一个函数,它甚至不工作。
arr.push({
id:“5”,
名称:“foo3”
});代码>不,如果您的代码示例是准确的,则不需要。请参阅@ThatBrianDude的答案。除非此更新,否则更新的意义将更小。产品
包含具有推送方法的对象。在执行arr.push之前,显示console.log(JSON.stringify(arr))
输出。您不希望arr.push
影响此产品,是吗?