如何在Javascript中对Json数据进行排序

How to sort Json data in Javascript?

本文关键字:数据 排序 Json 中对 Javascript      更新时间:2023-12-29

我有这种格式的JSON数据。

 {"count": 3, "records": [
 {"common":{"review_date": "2016-02-07 07:00:00","severityid": {"value": "2", "description": "Medium"}}},
 {"common":{"review_date": "2016-02-07 08:00:00","severityid": {"value": "2", "description": "Serious"}}},
 {"common":{"review_date": "2016-02-07 08:00:00","severityid": {"value": "2", "description": "Minor"}}}
 ]}

我想按"严重"、"中等"answers"次要"的顺序看这个。

{"count": 3, "records": [
 {"common":{"review_date": "2016-02-07 08:00:00","severityid": {"value": "2", "description": "Serious"}}},
 {"common":{"review_date": "2016-02-07 07:00:00","severityid": {"value": "2", "description": "Medium"}}},
 {"common":{"review_date": "2016-02-07 08:00:00","severityid": {"value": "2", "description": "Minor"}}}
 ]}

您可以为所需订单使用辅助对象。

{
    Serious: 1, 
    Medium: 2, 
    Minor: 3
}

var data = { "count": 3, "records": [{ "common": { "review_date": "2016-02-07 07:00:00", "severityid": { "value": "2", "description": "Medium" } } }, { "common": { "review_date": "2016-02-07 08:00:00", "severityid": { "value": "2", "description": "Serious" } } }, { "common": { "review_date": "2016-02-07 08:00:00", "severityid": { "value": "2", "description": "Minor" } } }] };
data.records.sort(function (a, b) {
    var order = { Serious: 1, Medium: 2, Minor: 3 };
    return order[a.common.severityid.description] - order[b.common.severityid.description];
});
document.write('<pre>' + JSON.stringify(data, 0, 4) + '</pre>');