javascript - 使用现有的 json 结构在 javascript 中构建 json 格式

标签 javascript jquery json

我在变量中有一个 json 结构,说“数据”,就像这样

{
"SearchWithMasterDataDIdAndScandefinitionDAO": [
    {
        "dateDm_id": 20120602,
        "issueValue": "ELTDIWKZ",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    },
    {
        "dateDm_id": 20120602,
        "issueValue": "LTDFPVOI",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    },
    {
        "dateDm_id": 20121005,
        "issueValue": "LTDILWGY",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    },
    {
        "dateDm_id": 20121005,
        "issueValue": "YMORCLTD",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    }
]
}

现在我想将这个结构更改为这样的 其中每个对象的 datedm_id 成为新 json 结构的根,以数组作为值 新的通缉结构:

{
"20120602": [
    {
        "issueValue": "ELTDIWKZ",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    },
    {
        "issueValue": "LTDFPVOI",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    }
],
"20121005": [
    {
        "issueValue": "YMORCLTD",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 1
    },
    {
        "issueValue": "COOPER",
        "scanName": "Company Stored as Person (Given Name)",
        "severityCode": 1,
        "severityName": "High",
        "totalDiscovered": 15
    }
]
}

请帮我解决这个问题

最佳答案

参见 fiddle :http://jsfiddle.net/YVB2Y/

总之,您需要在 for 循环内创建一个对象。

var returnVar = {}
b.SearchWithMasterDataDIdAndScandefinitionDAO.forEach(function(item){
    var thisItem;
    if(returnVar[item.dateDm_id] == undefined){
        thisItem = [];
        returnVar[item.dateDm_id]  = thisItem;
    }
    else {
        thisItem = returnVar[item.dateDm_id];
    }

    var obj = {};

    obj.issueValue = item.issueValue;
    //and so on..

    thisItem.push(obj);

});

console.log(returnVar);

关于javascript - 使用现有的 json 结构在 javascript 中构建 json 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21400314/

相关文章:

php - jQueryeach()结果数组到php到数据库

javascript - Angular - 添加选项以使用 Jquery 进行选择

JQuery Json错误: Object doesn't support this property or method

c# - 如何使用 JSON.NET 保存具有四个空格缩进的 JSON 文件?

javascript - 类型错误 : object is not a function In Node JS/socket. io

javascript - 在 Chart.js 中隐藏 y 轴的最小值和最大值

javascript - joinmonster 不是一个函数 - GraphQL

javascript - 无限循环平滑垂直 Javascript

java - Get 方法返回 XML 和 JSON

javascript - Socket.io 连接状态确认