如何将json从一种格式转换为另一种格式

How to convert json from one format to another?

本文关键字:格式 一种 转换 另一种 json      更新时间:2023-09-26

我已经有一个json数组,如

var a = {
    report: [ 
        {
            Name: "Nitin",
            comment: [
                {
                    count: 0,
                    mName: "Feb"
                },
                {
                    count: 2,
                    mName: "Mar"
                }
            ],
            view: [
                {
                    count: 1,
                    mName: "Feb"
                },
                {
                    count: 0,
                    mName: "Mar"
                }
            ],
            rating: [
                {
                    count: 3,
                    mName: "Feb"
                },
                {
                    count: 2,
                    mName: "Mar"
                }
            ],
            Place: "Vatakara"
        },
        {
            Name: "Sachin",
            comment: [
                {
                    count: 3,
                    mName: "Feb"
                },
                {
                    count: 1,
                    mName: "Mar"
                }
            ],
            view: [
                {
                    count: 2,
                    mName: "Feb"
                },
                {
                    count: 1,
                    mName: "Mar"
                }
            ],
            rating: [
               {
                    count: 0,
                    mName: "Feb"
               },
               {
                    count: 3,
                    mName: "Mar"
               }
            ],
            Place: "Mumbai"
        }
    ]
};

我想把数组的格式改为

var a = [
{
    "Name": "Nithin",
    "Month": "Feb",
    "viewCount": 1,
    "ratingCount": 3,
    "commentCount": 0,
    "place":"Vatakara"
}, {
    "Name": "Nithin",
    "Month": "Mar",
    "viewCount": 0,
    "ratingCount": 2,
    "commentCount": 2,
    "place":"Vatakara"
},
{
    "Name": "Sachin",
    "Month": "Feb",
    "Views": 2,
    "ratingCount": 0,
    "commentCount": 3,
    "place":"Mumbai"
},
{
    "Name": "Sachin",
    "Month": "Mar",
    "viewCount": 1,
    "ratingCount": 3,
    "commentCount": 1,
    "place":"Mumbai"
}
];

我如何使用jquery转换这个json ?请帮助DEMO

试试这个JS FIDDLE DEMO

var results = {
    report: [{
        Name: "Nitin",
        comment: [{
            count: 0,
            mName: "Feb"
        }, {
            count: 2,
            mName: "Mar"
        }],
        view: [{
            count: 1,
            mName: "Feb"
        }, {
            count: 0,
            mName: "Mar"
        }],
        rating: [{
            count: 3,
            mName: "Feb"
        }, {
            count: 2,
            mName: "Mar"
        }],
        Place: "Vatakara"
    }, {
        Name: "Sachin",
        comment: [{
            count: 3,
            mName: "Feb"
        }, {
            count: 1,
            mName: "Mar"
        }],
        view: [{
            count: 2,
            mName: "Feb"
        }, {
            count: 1,
            mName: "Mar"
        }],
        rating: [{
            count: 0,
            mName: "Feb"
        }, {
            count: 3,
            mName: "Mar"
        }],
        Place: "Mumbai"
    }]
};
/////////////////////////////////////////////////////////////////////   
var innArr = [];
        for (var i = 0; i < results.report.length; i++) { 
            for(var j=0;j<results.report[i].comment.length;j++)
            {
                innArr[innArr.length] = { 
                    "Name": results.report[i].name, 
                    "Month": results.report[i].comment[j].mName, 
                    "comment": results.report[i].comment[j].count, 
                    "rating": results.report[i].rating[j].count, 
                    "view": results.report[i].view[j].count 
                }; 
            }
        } 
alert(JSON.stringify(innArr));