0

我有一个看起来像这样的 javascript 对象(不要评判我)。

{88:{1:{nTextID:179,bPublished:1}},
 89:{1:{nTextID:22,bPublished:1},
     2:{nTextID:22,bPublished:1}
    }
};

在我生命周期的某个时刻,我构建了一个像这样的对象:

var category = {};
    category[categoryid] = {};
    category[categoryid][texttypeid] = {};
    category[categoryid][texttypeid].ntextid = $("#textid").val();

并将其传递给一个函数,然后我在较大的类别对象中找到该类别并尝试替换它:

var cattoreplace = 0;

for(item in category){
    $("#"+item).remove();
    cattoreplace = item;
    for(key in category[item]){
        category[item][key].ntextid = data.NTEXTID;
    }
}

for(item in jsonCategories){
    if(item == cattoreplace){
        delete jsonCategories[item];
        jsonCategories[item] = category;
    }
}

现在使用这条线jsonCategories[item] = category;结束了我的结构

{88:{88:{1:{nTextID:179,bPublished:1}}},
 89:{1:{nTextID:22,bPublished:1},
     2:{nTextID:22,bPublished:1}
    }
};

我想保持与我的第一个代码块示例中相同的结构。

我想知道如何用另一个对象替换我的对象中的一个项目(不求助于数组,即使有更好的优点......虽然如果不可能的话,请告诉我)。

4

0 回答 0