繁体   English   中英

将assoc对象推入数组

[英]push an assoc object into array

说我有这个:

var user = [{'id':1,'gender':'male'},{'id':2,'gender':'female'}]

我想用push()插入

'owner':true

放入第一个数组中,使其变为这样

var user = [{'id':1,'gender':'male','owner':true},{'id':2,'gender':'female'}]

我试过了

user[0].push({'owner':true}); 

但这行不通。

您不是将对象推入数组,而是将对象推入对象。
您可以通过使用jquery的extend方法来做到这一点。

var object = $.extend({}, object1, object2);

@Kim Gysen为您提供了有效的解决方案。 我认为您对数组和对象之间的逻辑感到困惑,我只是想为您提供一个仅使用JavaScript的解决方案,它可以帮助您了解此处的情况。 使用jQuery之类的库是节省时间的好方法,但是对您来说,我认为更全面的了解会有所帮助。

user[0]['owner'] = true;

在上面的代码中,您将通过第0个索引(在本例中为“'id':1”)访问数组,并使用括号表示法向其添加新属性。 另一种方法是使用点表示法:

user[0].owner = true;

考虑将属性添加到对象的过程:

var myObj = {};
myObj['newKey'] = "I'm a new value";
myObj['newKey2'] = "I'm an even newer value!"; 

我给您答案的原因是,使用jQuery似乎很方便,但从长远来看,了解JavaScript的原理和语法将对您有所帮助。 我建议您从CodeSchoolCodeAcademy获得一些好的资源

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM