javascript - 如何让一个对象充满数组?

标签 javascript arrays object

我想做一个这样的结构:

var myThings = {
    thing1: {
        ['24-04-12', '90'],
        ['25-04-12', '90'],
        ['26-04-12', '90']
    },
    thing2: {
        ['24-04-12', '10'],
        ['25-04-12', '30'],
        ['26-04-12', '210']
    }
}

(有 4 个东西,硬编码)。

每个对象中的数组将循环添加,所以我的代码如下所示:

var myThings = {"thing1":{}, "thing2":{}};

然后我不知道如何将我的数组推送到对象中。

我是不是太笨了,或者这不是这样做的方法?

非常感谢!

最佳答案

您需要在那里使用Array 而不是Object。喜欢

var myThings = {
    thing1: [
        ['24-04-12', '90'],
        ['25-04-12', '90'],
        ['26-04-12', '90']
    ],
    thing2: [
        ['24-04-12', '10'],
        ['25-04-12', '30'],
        ['26-04-12', '210']
    ]
}

现在因为 thing1thing2Arrays 你可以只使用 Array.prototype.push 来推送新的Arrays 到那个Array

Object.keys( myThings ).forEach(function( thing ) {
    myThings[ thing ].push( ['01-01-12', '42'] );
});

该代码会将 ['01-01-12', '42'] 添加到该对象中的所有当前 things

免责声明:以上代码包含 ES5。您需要一个支持该功能的浏览器或一个 Shim 来模拟

关于javascript - 如何让一个对象充满数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9958351/

相关文章:

javascript - 未解析时为 undefined json,解析时为 undefined token

javascript - 如何在nodejs路由器中使用Promise和yield?

arrays - WebKitView请求没有通过?

javascript - Lodash 按值对深层对象进行排序和排序,而不丢失 key

java - 从文本文件中读取整数并将其放入对象中以存储到 HashMap 中

javascript - 使用 extraData 时,React Native FlatList 会渲染数据两次

javascript - 为什么 Style.Display = None 无法使我的按钮不可见?

java - 在 Java 中使用列表来存储用户输入并执行任务

c - 使用C语言从数组中删除重复项

javascript - 在给定对象键匹配条件的情况下,将键添加到数组集合内的对象集