javascript - 动态添加项目到 javascript 对象

标签 javascript object

我定义了这个:

var data ={};

我想为对象中的每个“行”得到类似的东西:

{field1: "bananas", field2:'test', field3:111, field4:"23.4", field5:"bob"},
{field1: "fruit", field2:'test again', field3:222, field4:"30", field5:"john"}

我知道我可以这样做来添加动态和静态数据:

data['field1']= docType;
    data['field2'] = docRef;
    data['field3'] = "test3";
    data['field4'] = mydynamicdata;
    data['field5'] = "test5";

但是我怎样才能添加不同的项目行呢?这段代码只会添加一个项目集,对吧?如何添加第二个?

谢谢!

最佳答案

您需要一个对象数组 - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array

var data = [];

data.push({field1: "bananas", field2:'test', field3:111, field4:"23.4", field5:"bob"})
data.push({field1: "fruit", field2:'test again', field3:222, field4:"30", field5:"john"})

然后您可以进行如下更改:

data[0]['field1'] = 'new value'
//or:
data[0].field1 = 'new value'

其中 0 是列表内项目的索引。所以 data[1] 将是第二个对象,依此类推...

关于javascript - 动态添加项目到 javascript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38493623/

相关文章:

linux - 如何解决 "missing shared object"w/o root right

javascript - 将多维对象数组缩减为单个对象数组

javascript - 如何在 React 中将图像作为 Prop 传递?

javascript - 按给定索引处的类获取元素

javascript - 如何对基于 jQuery 的代码进行单元测试?

java 将对象用作 double 而无需显式强制转换

javascript - VueJS 中的数据绑定(bind)以构建 URL

javascript - 从对象(带属性)转换的数组返回 0 长度

javascript - 将变量存储在数组中(充当对象中的值) JavaScript

javascript - 我如何创建一个带有 2 个键的 JS 对象