Javascript 在js中将对象推送到数组
我试图使用以下命令将Javascript 在js中将对象推送到数组,javascript,arrays,object,Javascript,Arrays,Object,我试图使用以下命令将对象推送到数组: a=a.concat(b) 因此,我希望数组a类似于a=[Object1,Object2…] 但上述声明的结果是: a = [[Object1, Object2...][Object11, Object12...]]; 如何在JS中实现这一点 Object.values()方法返回给定对象自身可枚举属性值的数组 您可以使用对象值方法,如: Object.values(b); 示例: var a=[]; var obj_1={'attr_1':'val_
对象
推送到数组
:
a=a.concat(b)代码>
因此,我希望数组a类似于a=[Object1,Object2…]
但上述声明的结果是:
a = [[Object1, Object2...][Object11, Object12...]];
如何在JS中实现这一点
Object.values()
方法返回给定对象自身可枚举属性值的数组
您可以使用对象值
方法,如:
Object.values(b);
示例:
var a=[];
var obj_1={'attr_1':'val_1','attr_2':'val_2'};
var obj_2={'attr_3':'val_3','attr_4':'val_4'};
变量b={'a':obj_1,'b':obj_2};
a=对象值(b);
控制台日志(a)
您正在使用Array.concat()
连接两个数组,您需要使用Array.push()
设a=[];
设b={a:1,b:2,c:3};
用于(b中的obj){
设val={};
val[obj]=b[obj];
a、 推(val);
}
控制台日志(a)代码>如果我理解你想要什么,你只想要对象,而不是键。因此,可能是:
for( var key in b ){
var value = b[key];
a.push(value);
}
console.log(JSON.stringify(a));
希望它能帮助…a.push(b)代码>…var b={ObjectA,ObjectB}在JS中没有意义,除非这些对象是b
的属性值:var b={a:ObjectA,b:ObjectB}
是的,值是这样的b={a:ObjectA,c:ObjectC,}
如果a
是一个数组,那么请尝试a.concat(Object.values(b))
。这将把b
中的值连接到a
数组。检查我的更新,我得到了你,Object.values()
就是你要搜索的。在这种情况下,创建第三个对象调用Object.values()
比只调用:a.push(obj\u 1)更有益吗;a、 推动(obj_2)代码>?…相同的结果。b的值类似于:b={a:ObjectA,c:ObjectC,…}
您所说的ObjectA
和ObjectC
是什么意思?给我们一个真实的案例,这样我们就能了解更多你想要的achieve@user1012181Object.values(b)
做的事情与@Andre在接受的答案中建议的一样!!
var a = [ObjectA];
var b = ObjectB;
a.push(b);
// a = [ObjectA, ObjectB];
for( var key in b ){
var value = b[key];
a.push(value);
}
console.log(JSON.stringify(a));