如何添加数组新键值(javascript)

How to add array new key value ( javascript )?

本文关键字:键值 javascript 新键值 数组 添加 何添加      更新时间:2023-09-26

如何添加数组新键值(javascript)?

样本图像http://i.hizliresim.com/dj3OLn.png

这个例子是我的阵列

source.localdata[0].c_Id="2d5955ee-415b-470a-8700-3ae65ee122db"
                    Name ="mike"
                    LastName="jonas"

source.localdata[1].c_C_ID"b851c285-035f-4a51-8237-1e3c3528e089"
                    Name ="richard"
                    LastName="gere"

我想输入密钥和价值数据

source.localdata[0].Address = "mike for address"
source.localdata[1].Address = "richard for address"

更多

输出

source.localdata[0].c_Id="2d5955ee-415b-470a-8700-3ae65ee122db"
                    Name ="mike"
                    LastName="jonas"
                    Address = "mike for address"
source.localdata[1].c_C_ID"b851c285-035f-4a51-8237-1e3c3528e089"
                    Name ="richard"
                    LastName="gere"
                    Address = "richard for address"

我写了这个代码,但我遇到了错误JavaScript运行时错误:对象不支持属性或方法"push"

function dataSourceCompare(newdata) {
for (var i = 0; i < source.localdata.length; i++) {
    for (var j = 0; j < newdata.dynamicColumns.length; j++) {
        if (crewItems[i].c_C_ID === newdata.dynamicColumns[j].ColumnValue) {
            source.localdata[i].push([newdata.dynamicColumns[j].ColumnName, newdata.dynamicColumns[j].ColumnValue]);
        }             
    }                                                   
}                                                       

}

感谢

Array.push()用于向数组添加新元素,不能在纯javascript对象上使用。你想做的是为一个对象添加一个新的特性,并使用动态属性名称,下面是如何做到的:

source.localdata[i][newdata.dynamicColumns[j].ColumnName] = newdata.dynamicColumns[j].ColumnValue;