在Javascript中动态构建对象

在Javascript中动态构建对象,javascript,arrays,javascript-objects,dom-events,Javascript,Arrays,Javascript Objects,Dom Events,我有一个对象定义为: outobject = []; 在使用数据构建对象之后,该对象有十项,共四列,如下所示: id: 1 name : "abc" date: "11/1/2012" type : "normal" id : 2 name : "def" date : "11/2/2012" type : "normal" 等等 现在我在对象中循环并进行计算,最终我想在对象中添加一列,如下所示: for (var i = 0; i < outobject.length; i++)

我有一个对象定义为:

outobject = [];

在使用数据构建对象之后,该对象有十项,共四列,如下所示:

id: 1
name : "abc"
date: "11/1/2012"
type : "normal"

id : 2
name : "def"
date : "11/2/2012"
type : "normal"
等等

现在我在对象中循环并进行计算,最终我想在对象中添加一列,如下所示:

for (var i = 0; i < outobject.length; i++) {

//do some calculation, I got output as "Brazil" for this particular instance of outobject[i]

outobject[i].push({
                        locationname: "Brazil"
                    });

}
outobject[0] = {
    id: 1,
    name : "abc",
    date: "11/1/2012",
    type : "normal"
};

是否可以添加这样的数据,我之所以这样做“位置”,是因为它必须动态计算

我假设当你说你已经填充了对象(这是一个数组)时,你已经做了这样的事情:

for (var i = 0; i < outobject.length; i++) {

//do some calculation, I got output as "Brazil" for this particular instance of outobject[i]

outobject[i].push({
                        locationname: "Brazil"
                    });

}
outobject[0] = {
    id: 1,
    name : "abc",
    date: "11/1/2012",
    type : "normal"
};

…等其他三个条目

这:

…尝试将条目
i
处的对象视为数组,但您的问题中没有任何内容表明它是数组

如果您的目标是添加第五项:

如果您的目标是在
outobject[i]
处向对象添加
locationname
属性,则:

outobject[i].locationname = "Brazil";

应该是这样的:
outobject[i].locationname=“巴西”推送用于将项目添加到数组中
outobject[i]
不是数组,它是一个对象。
outobject=[]-这是一个数组“在用数据构建对象之后”-你正在做什么…如何做?“我得到了一个异常”-你得到了什么异常?我很高兴下面的答案有帮助。为了未来读者的利益,编辑带有上述要求的相关细节的问题仍然很有用。
outobject.push({
    locationname: "Brazil"
});
outobject[i].locationname = "Brazil";