jquery – 将数据插入数组

我无法将数据插入数组.我希望它作为一个数组.我想在每一行中添加12个月.以下是我的代码:

var data = {};
for (var i = 0; i < 5; i++) {
    data[i] = {
        Name: "Sample",
        Group: "Sample",
        Offering: "India",
        Type: "Employee",
        subject: "Sample",
        sponser: true
    };

    for (j = 1; j <= 12; j++) {
        var val = "m" + j;
        data.val = j + 1;
    }
}

最佳答案 >你的阵列是一个对象!如果您希望它是一个数组,则需要更改var data = {}; to var data = [];.但它会以同样的方式工作,所以这里没有任何区别.

>您没有在第二个for循环中声明变量j.您需要在它前面添加var,就像在第一个循环中一样.

>您需要指定要设置月份的对象/数组的当前索引.因此,在第二个for循环中写入数据[i]而不是数据.

>由于你想在你的对象/数组中使用val的值作为键,你需要在它周围放置bracers [].否则,您将只设置对象的属性val.

>您的月份从1到12.您只需要设置j而不是j 1,因为否则会将月份写入2到13.

var data = {};                       // this is an object
                                     // if it should be an array write 'var data = [];'

for( var i = 0; i < 5; i++ ) {
    data[i] = {
        Name     : "Sample",
        Group    : "Sample",
        Offering : "India",
        Type     : "Employee",
        subject  : "Sample",
        sponser  : true
    };

    for( var j = 1; j <= 12; j++ ) { // added 'var' before 'j'
        var val = "m" + j;
        data[i][val] = j;            // added '[i]' after 'data'
                                     // changed '.val' to '[val]'
                                     // removed '+ 1' after 'j'
    }
}

console.log(data);
点赞