我想创建一个多维数组。
像这样:

array(
    1234=>array(
        "customInfo1"=>1
        "customInfo2"=>2
    ),
    5678=>array(
        "customInfo1"=>3
        "customInfo2"=>4
    )
)


我尝试这样做

var myarray = [];
function headerBuffer(transId,column,value){
    myarray [transId][column] = value;
}


我必须创建和更新此数组。如果输入字段已更新,则该函数将再次运行,并且新记录必须插入或更新数组。

最佳答案

PHP关联数组是JS中的对象。因此,您需要执行以下操作:

let obj = {
    "1234": {
        "customInfo1": 1,
        "customInfo2": 4
    },
    "5678": {
        "customInfo1": 3,
        "customInfo2": 4
    }
}

虽然,JS中的对象键只能是字符串,所以您需要考虑到这一点。
因此,您需要将代码修改为:
var obj = {};
function headerBuffer(transId,column,value){
    // If transId does not exist yet, make it an empty object
    if (!obj[transId] {
        obj[transId] = {};
    }
    obj[transId][column] = value;
}

09-25 22:25