javascript如何在对象创建后将新对象添加到对象中
这是我的目标:javascript如何在对象创建后将新对象添加到对象中,javascript,object,javascript-objects,Javascript,Object,Javascript Objects,这是我的目标: var example = {"119":{"bannerId":"119","overlay":"3","type":"1",...},"210":{"bannerId":"210","overlay":"3","type":"1",...},...} 通过这种方式,我可以非常轻松地访问或修改对象。例如,如果我想添加新属性,我只需将其称为: example[119].newProperty = 1; 并且非常容易访问它: alert(example[119].newProp
var example = {"119":{"bannerId":"119","overlay":"3","type":"1",...},"210":{"bannerId":"210","overlay":"3","type":"1",...},...}
通过这种方式,我可以非常轻松地访问或修改对象。例如,如果我想添加新属性,我只需将其称为:
example[119].newProperty = 1;
并且非常容易访问它:
alert(example[119].newProperty)
alert(example[210].type)
通过知道banner id,我可以访问任何代码范围内的任何数据,这就是我选择此模式的原因。问题是我需要在示例
中添加新对象。例如,我需要将其放入示例中:
{“30”:{“bannerId”:“119”,“overlay”:“3”,“type”:“1”,…}
我不知道这是否可能。它是?解决这个问题的一种方法是使用数组,例如数组,每个键都携带对象,我可以将新的键和对象一起推入数组。但我不确定这是否是正确的方法,因为键将以200,300开始。。。log(示例)显示200之前的所有键都未定义。有这么多空钥匙好吗?还有其他更好的方法吗
编辑:
我意识到这也可以用object来实现。问题是因为我试图将新属性直接指定给新对象,如下所示:
example[200].example3 = 2;
$.extend(true, example, { "30": { objectId: "201" }}); // deep copy
猜测创建示例对象就足够了。我缺少的是这一行:
example[200] = {}
谢谢你的回答,现在可以了
example[30] = {"bannerId":"119","overlay":"3","type":"1",...};
如果它在一个循环中,你也可以尝试下面的方法
var i = 0;
var example = {};
for (i=0; i<10; i++) {
example[i] = {bannerId : i+1 , someOtherItem : i + "Hello"}
}
console.log(example);
var i=0;
var-example={};
对于(i=0;i
如果它在一个循环中,你也可以尝试下面的方法
var i = 0;
var example = {};
for (i=0; i<10; i++) {
example[i] = {bannerId : i+1 , someOtherItem : i + "Hello"}
}
console.log(example);
var i=0;
var-example={};
对于(i=0;i
如果它在一个循环中,你也可以尝试下面的方法
var i = 0;
var example = {};
for (i=0; i<10; i++) {
example[i] = {bannerId : i+1 , someOtherItem : i + "Hello"}
}
console.log(example);
var i=0;
var-example={};
对于(i=0;i
如果它在一个循环中,你也可以尝试下面的方法
var i = 0;
var example = {};
for (i=0; i<10; i++) {
example[i] = {bannerId : i+1 , someOtherItem : i + "Hello"}
}
console.log(example);
var i=0;
var-example={};
对于(i=0;i),您始终可以访问(和分配)对象的临时键,即使您最初没有定义它们
因此,对于您的示例,您只需执行以下操作:
example["30"] = {... /*your new object*/...}
您始终可以访问(和分配)对象的临时键,即使您最初没有定义它们
因此,对于您的示例,您只需执行以下操作:
example["30"] = {... /*your new object*/...}
您始终可以访问(和分配)对象的临时键,即使您最初没有定义它们
因此,对于您的示例,您只需执行以下操作:
example["30"] = {... /*your new object*/...}
您始终可以访问(和分配)对象的临时键,即使您最初没有定义它们
因此,对于您的示例,您只需执行以下操作:
example["30"] = {... /*your new object*/...}
似乎要扩展对象,可以使用jQuery或下划线,大致如下所示:
example[200].example3 = 2;
$.extend(true, example, { "30": { objectId: "201" }}); // deep copy
如果您不想使用任何库,只需执行以下操作:
example["30"] = myObj["30"];
似乎要扩展对象,可以使用jQuery或下划线,大致如下所示:
example[200].example3 = 2;
$.extend(true, example, { "30": { objectId: "201" }}); // deep copy
如果您不想使用任何库,只需执行以下操作:
example["30"] = myObj["30"];
似乎要扩展对象,可以使用jQuery或下划线,大致如下所示:
example[200].example3 = 2;
$.extend(true, example, { "30": { objectId: "201" }}); // deep copy
如果您不想使用任何库,只需执行以下操作:
example["30"] = myObj["30"];
似乎要扩展对象,可以使用jQuery或下划线,大致如下所示:
example[200].example3 = 2;
$.extend(true, example, { "30": { objectId: "201" }}); // deep copy
如果您不想使用任何库,只需执行以下操作:
example["30"] = myObj["30"];