如何将父字段名添加到json对象中新添加的行中

How to add parent fieldname to newly added row in json object

本文关键字:添加 新添加 对象 json 字段      更新时间:2023-09-26

我有下面的代码,使用它可以将新行推送到我的json对象中,但无法将父字段名(d0,d1,d2..)添加到新添加的行中,我该怎么做?

代码:

    var d = [{
        "id": 0,
            "name": "Housing",
            "value": 71
    }, {
        "id": 1,
            "name": "Travel",
            "value": 85
    }, {
        "id": 2,
            "name": "Restaurant",
            "value": 44
    }, {
        "id": 3,
            "name": "Bank",
            "value": 33
    }];
    var dataset = {};
    d.forEach(function (e, i) {
        dataset['d' + i] = e;
    });
    alert(JSON.stringify(dataset,null,2));
    var input='Banking';
    var dataset_final={};
    d.forEach(function (e, i) {
      counter=i;
      });
      alert(counter+1);
    var input='Movies';
    d.push({id:counter+1,name:input,value:"3"});
    alert(JSON.stringify(d,null,2))

我想直接将数据推送到"数据集"变量中。如何为第4行添加父字段名称,如"d4",这将为名称Movies新添加?

您可以这样做:

var counter = Object.keys(dataset).length;
dataset['d' + counter] = {name: 'Banking', value: 100};